# What is Drift Server

Have you as a software developer ever been in the following situation: you start working on a legacy code base. You have no clue what the application is doing or how it is implemented. Documentation is lacking or not up to date. &#x20;

Drift Server is a tool to help you in this kind of situation.  It is used to quickly gain some insights when you start working on a complex existing legacy code base. You can treat the whole system as a black box, start with a local database with as little data as possible and see what happens in the DB every time you do something in the front-end.

Say you want to know what the system is doing when you create a new user:&#x20;

1. Connect Drift Server to the same databases (or file systems) as  your legacy application. &#x20;

![The Drift  System Connections screen with an overview of the DB connections and file system directories](/files/-LlpcYPx9SP4j8xFaHmS)

2\. Start a new recording from the recordings page

![Recordings page](/files/-LkxHNc0w0jmMjMgvQqq)

3\.  Take an initial snapshot of the databases and filesystem as a baseline

![initial database database snapshot](/files/-LkxHOt_Zok7mO4QFMd3)

![initial filesystem snapshot](/files/-LlpfL7a9-gmlGXM9GSm)

4\.  Change the state of the legacy system by interacting with it (e.g. by executing the usecase "creating a new user")&#x20;

When done, take another snapshot, to compare with the first one to see what the application actually did:

![Database Delta showing the delta between two Database Snapshots](/files/-LkxHPtLvCpK7gxGmqOR)

![Filesystem Delta showing the delta between two  Filesystem snapshots ](/files/-Llqn9Yy5-UeF7kb-QXN)

Drift server is limited to a local development environment, with only a single user and with very low amount of data. It should work fine for about 10000 rows of data.&#x20;


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://driftserver.gitbook.io/drift-server/master.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
