> mille dea est operum: certe dea carminis illa est;
>   si mereor, studiis adsit amica meis. > > — P. Ovidi Nasonis - Fasti 3.833-834 This is a simple application that keeps track of all your sources (i.e. books, papers, articles). With this information at hand you can: - Add comments and notes to any source to keep track of what you found more relevant from it. - Tag sources and comments in whatever way you wish. - Save searches that match on a user-defined tag, or a certain string from any of your sources or comments. - Export searches into CSV or TeX so it can be used for building up bibliography sections on a paper you might be working on. ## Workflow The workflow revolves around the idea of being able to track sources and comments with tags that you have defined, and then being able to list sources with searches based on these tags. This way, you might want to add tags about project names, topics, language, etc.; and then attach these tags into the sources and comments that you have added into the application. Afterwards, you can save searches and they will be shown on top of the application. With this, you can switch between different ways in which you have groupped your sources. This groups come in handy to further filter on your sources, or to export these sources into a TeX file that can be used for the paper you might be working on. ## Deployment The recommended way to deploy this application is through a Docker container. Take a look at the provided `Dockerfile` file, which is more than enough to get this done. After building the image, remember that: 1. You need to provide a `RAILS_MASTER_KEY`, just like any other Rails application. 2. You need to create a Docker volume for the `/rails/storage` path. This path will contain the SQLite3 database and thus you need this to persist across deployments. Oh, yeah, we are using SQLite3 in production, no biggie! For the use case of this application SQLite3 is actually just fine and it allows us to keep things simple. Other than that, there are some *optional* environment variables that you might want to touch: - `OPERUM_BASE_TITLE`: the title that is going to be shown for the application. By default this is set to be just `Operum`. - `OPERUM_DEFAULT_LOCALE`: that's right, this application supports multiple languages! For now these languages are catalan and english but other languages are also welcome, just hit me with a [patch](https://jo.mssola.com/contributing.html) and take a look at the files under `config/locales`. You can change the default locale (catalan) by setting this environment variable with the language code for it (i.e. `en` for english). ## License ```txt Copyright (C) 2023-Ω Miquel Sabaté Solà This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details. You should have received a copy of the GNU Affero General Public License along with this program. If not, see . ```