Files
In Eidos, dynamic data (such as tables and documents) is stored in a SQLite database, while static assets (such as images, audio, videos, etc.) are handled via three different mechanisms. This article explains these three file management approaches.
Default handling
Section titled “Default handling”Directorymy-project/
Directory.eidos/
- db.sqlite3 ← dynamic data storage
Directoryfiles/ ← internal files accessible at the /files/ path
- screenshot.png
- document.pdf
- readme.md ← project file accessible at /~/readme.md
By default, when you load local files into Eidos or paste screenshots, Eidos copies those static assets from the clipboard or original disk location into the .eidos/files/ directory. These files are then managed centrally by Eidos.
You can access these files through the image/file picker components. Eidos already supports basic file storage and management, and future versions will add enhancements such as OCR text extraction and semantic search. All files are stored under .eidos/files/ for easier management and synchronization.
Mounted folders
Section titled “Mounted folders”Directory/Users/eidos/Music/ ← mounted as /@/audio/
- song.mp3
Directory/Users/eidos/Documents/Books/ ← mounted as /@/books/
- programming-guide.pdf
- design-principles.pdf
- api-reference.pdf
Data inside the .eidos directory is typically synchronized. Large files may not be suitable to place there, yet you may still want to reference them in Eidos. In such cases, use mounted folders.
Mount a directory with the following command:
eidos mount <mount-name> <actual-directory-path>After mounting, you can reference files from that external directory in Eidos. The file picker will show mounted folders so you can select files to reference. You can also construct paths directly to display them as a file field in tables:
/@/<mount-name>/filenameFor example, to mount a local music folder:
eidos mount audio /Users/eidos/Music# Then access /Users/eidos/Music/song.mp3 via /@/audio/song.mp3Or to mount a books folder:
eidos mount books /Users/eidos/Documents/Books# Then access book files via /@/books/programming-guide.pdfBesides the command line, you can add mounted folders directly in Space settings: in the “Mounts” tab, click “Add Mount”, choose a local directory, provide a name, and save. This lets you complete the mount via the UI without using commands.
Project folder
Section titled “Project folder”Directorymy-code-project/
Directory.eidos/
- db.sqlite3
Directoryfiles/
- …
Directorysrc/
- main.js ← /~/src/main.js
- utils.js
- .gitignore ← /~/.gitignore
Directorydocs/
- api.md ← /~/docs/api.md
- readme.md ← /~/readme.md
The project folder is a special concept. Each space creates a .eidos directory within a specific location; the folder containing that directory is called the project folder. This could be a code project, a design project, or any other working directory.
You do not need a mount to access the project folder. Eidos provides a simplified path syntax:
/~/readme.md points to the readme.md file under the project folder.
For example, in a code project you can reference project files like this:
/~/src/main.js/~/.gitignore/~/docs/api.mdThis syntax provides a convenient mechanism to reference external files from the project folder in your notes. It is often used to reference multimedia assets such as images, audio, videos, and more.