Calepin is a small open source self-hostable note-taking web app.
It is based on two packages:
- The API, calepin-api. RESTful PHP API using Laravel 5.6.
- The web app, calepin-frontend. Using React.
Please note: A complete rewrite of Calepin, both frontend & backend, is planned in mid-2020. Star & Watch the repo to get updated on the progress!
There are several ways you can use Calepin.
- Use calepin.io services for free. You can encrypt your notes in AES-256 client-side, so the server will never know what's inside your notes.
- Use calepin.io with your self-hosted API. You can set the API URL in the settings.
- Hosting everything, see below.
Hosting the front-end is quite simple, it's only HTML/CSS/JS, so you can host it wherever you'd like.
git clone git@github.com:orditeck/calepin-frontend.git
cd calepin-frontend
npm install
npm run build
- Upload the content of the
build
folder to your web server
You can then either use the Calepin public API (at https://api.calepin.io/api/v1) or install the API on your server.
By default, when you open your self-hosted Calepin's frontend, it'll use the default API, api.calepin.io
. You can change the API URL in the settings and it'll be remembered on your device as long as don't clear the app storage, but you'd have to do this on every devices you use and when sharing a note to someone that never set your API URL in the settings, it'd try to fetch the note from api.calepin.io
(feature to be added later). And anyway, at this point, I expect you'll want to use your own API all the time.
- Go to https://github.com/orditeck/calepin-frontend/blob/master/src/stores/Settings.js#L5
- Replace the URL with yours
- Build and enjoy!
git clone git@github.com:orditeck/calepin-frontend.git
npm install
npm run start
Non-exhaustive and unordered
- Button to clear local/session storage after logout
- Tags/folders + folder sharing with navigation + search
- Some kind of pagination on notes listing
- Autosave
- Notes versionning/history
- Mobile friendly
- Mobile app
- A website
- UI refactor
- Export notes
- Import notes
- Handle custom server when sharing public note
Copyright (C) 2018 Keven "orditeck" Lefebvre