# Akkounts This app allows Kosmos/LDAP users to manage their accounts, including credentials, invites, donations, etc.. ## Features * [x] Log in with existing LDAP account * [x] Reset account password by providing both username and email address * [x] Reset account password when logged in, via reset email * [x] Log in with admin permissions * [x] View LDAP users as admin * [ ] List my donations * [ ] Invite new users from your account * [ ] Sign up for a new account via invite * [ ] Sign up for a new account by donating upfront * [ ] Sign up for a new account via proving contributions (via cryptographic signature) * [ ] ... _Planned features are not at all a complete or static list, of course. Suggestions and pull requests welcome!_ ## Development ### Rails app Installing dependencies: bundle install yarn install Setting up local database (SQLite): bundle exec rails db:create bundle exec rails db:migrate Running the dev server: bundle exec rails server Running all specs: bundle exec rspec ### LDAP server TODO make it easy to run a local Kosmos LDAP server for development, without manual LDIF imports etc. (or provide a staging instance) ## Documentation * [Ruby on Rails](https://guides.rubyonrails.org/) * [Sass](https://sass-lang.com/documentation) ### Testing * [RSpec](https://rspec.info/documentation/) * [Capybara](https://rubydoc.info/github/teamcapybara/capybara/master) ### LDAP / Auth * [devise_ldap_authenticatable](https://github.com/cschiewek/devise_ldap_authenticatable) * [net/ldap](https://www.rubydoc.info/gems/net-ldap/Net/LDAP) ## License [GNU Affero General Public License v3.0](https://choosealicense.com/licenses/agpl-3.0/)