{"name":"flatnotes: A Self-Hosted, Database-less Note-Taking Web App","description":"flatnotes is a self-hosted, database-less note-taking web application designed for simplicity and efficiency. It stores all your notes as plain markdown files, ensuring you retain full control and avoid vendor lock-in. This app offers a distraction-free interface with powerful search and tagging capabilities.","github":"https://github.com/dullage/flatnotes","url":"https://osrepos.com/repo/dullage-flatnotes","source":"osrepos.com","sourceDescription":"This repository profile is provided by osrepos.com, an open source repository discovery platform.","repositoryProfile":"https://osrepos.com/repo/dullage-flatnotes","generatedFor":"open source discovery and AI-assisted research","markdown":"https://osrepos.com/repo/dullage-flatnotes.md","json":"https://osrepos.com/repo/dullage-flatnotes.json","topics":["markdown","note-taking","self-hosted","web-app","Vue","notes-app","wiki"],"keywords":["markdown","note-taking","self-hosted","web-app","Vue","notes-app","wiki"],"stars":null,"summary":"flatnotes is a self-hosted, database-less note-taking web application designed for simplicity and efficiency. It stores all your notes as plain markdown files, ensuring you retain full control and avoid vendor lock-in. This app offers a distraction-free interface with powerful search and tagging capabilities.","content":"## Introduction\n\nflatnotes is an innovative, self-hosted, database-less note-taking web application that prioritizes simplicity and user control. It stores all your notes as plain markdown files within a flat folder structure, eliminating the need for complex databases or proprietary formats. This design ensures that your notes are always accessible and portable, freeing you from vendor lock-in.\n\nDesigned to be distraction-free, flatnotes offers a clean and intuitive user interface. It focuses on putting your note content first, complemented by powerful search and tagging functionalities. You can explore a live demo of flatnotes to experience its features firsthand: [flatnotes Demo](https://demo.flatnotes.io){:target=\"_blank\"}.\n\n## Installation\n\nflatnotes provides flexible options for deployment, whether you prefer a managed service or self-hosting. For a quick and easy setup, you can deploy flatnotes through [PikaPods](https://www.pikapods.com/pods?run=flatnotes){:target=\"_blank\"}, a hosted solution.\n\nFor those who prefer to self-host, Docker is the recommended method, offering robust and consistent deployment across various environments. Below are examples demonstrating how to get flatnotes up and running using Docker commands or Docker Compose.\n\n## Examples\n\n### Docker Run Command\n\nTo quickly launch flatnotes using a Docker run command, you can use the following:\n\nshell\ndocker run -d \\\n  -e \"PUID=1000\" \\\n  -e \"PGID=1000\" \\\n  -e \"FLATNOTES_AUTH_TYPE=password\" \\\n  -e \"FLATNOTES_USERNAME=user\" \\\n  -e 'FLATNOTES_PASSWORD=changeMe!' \\\n  -e \"FLATNOTES_SECRET_KEY=aLongRandomSeriesOfCharacters\" \\\n  -v \"$(pwd)/data:/data\" \\\n  -p \"8080:8080\" \\\n  dullage/flatnotes:latest\n\n\n### Docker Compose Example\n\nFor a more persistent and configurable setup, Docker Compose is an excellent choice. Here's an example `docker-compose.yml` file:\n\nyaml\nversion: \"3\"\n\nservices:\n  flatnotes:\n    container_name: flatnotes\n    image: dullage/flatnotes:latest\n    environment:\n      PUID: 1000\n      PGID: 1000\n      FLATNOTES_AUTH_TYPE: \"password\"\n      FLATNOTES_USERNAME: \"user\"\n      FLATNOTES_PASSWORD: \"changeMe!\"\n      FLATNOTES_SECRET_KEY: \"aLongRandomSeriesOfCharacters\"\n    volumes:\n      - \"./data:/data\"\n      # Optional. Allows you to save the search index in a different location: \n      # - \"./index:/data/.flatnotes\"\n    ports:\n      - \"8080:8080\"\n    restart: unless-stopped\n\n\nFor a comprehensive list of configuration options and environment variables, refer to the [flatnotes Wiki](https://github.com/dullage/flatnotes/wiki/Environment-Variables){:target=\"_blank\"}.\n\n## Why Use flatnotes?\n\nflatnotes stands out with its commitment to simplicity, control, and efficiency. Key features and design principles include:\n\n*   **Distraction-Free Interface**: A clean and simple user interface that puts your note content first.\n*   **No Vendor Lock-in**: Your notes are plain markdown files, easily transferable to other applications. There's no database or proprietary formatting.\n*   **Powerful Search and Tagging**: Quickly find any note with advanced full-text search and flexible tagging functionality.\n*   **Mobile Responsive**: Access and manage your notes seamlessly from any device.\n*   **Flexible Editing**: Choose between raw markdown or a WYSIWYG editor mode.\n*   **Wikilink Support**: Easily link to other notes within your collection using `[[My Other Note]]`.\n*   **Customization**: Personalize your experience with customizable home pages and light/dark themes.\n*   **Secure Access**: Multiple authentication options, including username/password and 2FA.\n*   **API Access**: A Restful API for programmatic interaction with your notes.\n\nThe application also intelligently handles external changes to your markdown files, incrementally syncing its search index, allowing you to edit notes outside of flatnotes even while it's running.\n\n## Links\n\n*   **GitHub Repository**: [dullage/flatnotes](https://github.com/dullage/flatnotes){:target=\"_blank\"}\n*   **Demo Site**: [flatnotes Demo](https://demo.flatnotes.io){:target=\"_blank\"}\n*   **Official Wiki**: [flatnotes Wiki](https://github.com/dullage/flatnotes/wiki){:target=\"_blank\"}\n*   **Deploy on PikaPods**: [Run flatnotes on PikaPods](https://www.pikapods.com/pods?run=flatnotes){:target=\"_blank\"}\n*   **Sponsor the Project**: [Sponsor Dullage](https://github.com/sponsors/Dullage){:target=\"_blank\"}","metrics":{"detailViews":0,"githubClicks":0},"dates":{"published":null,"modified":"2025-10-23T11:01:53.000Z"}}