Warning: This is the branch for the major rewrite of Panoptikum.social
- upgrading to the latest version of Phoenix
- switching from Bootstrap + Bootflat to Tailwind.css
- switching from jQuery to Alpine.js
- switching for certain actions from MVC to LiveView
- switching from master to main branch
Currently the master branch is the one that is still used in production. This branch is work in progress!
Panoptikum (or short Pan) is a webapplication written in Phoenix that represents a podcast discovery and community website.
It is licensed under the AGPL license. The project website with more information on the project can be found at https://www.panoptikum.social If you are interested and want to get in touch, write an email to Stefan.
- Make sure you have Elixir installed.
- Make sure you have Node.js installed.
- Make sure you have PostgreSQL installed and running.
- Make sure you have ManticoreSearch installed and running.
📦 Install dependencies
- Install Elixir's dependencies with
- Install Node.js dependencies with
npm installinside the assets folder
config/dev.secret.exsand insert your own data
config/prod.secret.exsand insert your own data
📚 Database and demo data
- Setup your database with
- Import demo data
- Import data with
psql pan_dev < pan_dev.sqlinside the materials folder
- Seed an admin user with
mix run priv/repo/seeds.exsthat has the credentials user
⏯ Run locally
- Start Phoenix endpoint with
- Now you can visit
localhost:4000from your browser.
- Login as Admin using username
- Run tests with
- Sending a Test Mail from the console
Pan.Email.login_link_html_email("mytoken", "firstname.lastname@example.org") |> Pan.Mailer.deliver()
- To rebuilt the search index login as