FlowOps is a modern, full-stack web application designed for creating, managing, and experiencing events in real time. Built on the rock-solid foundation of Elixir and Phoenix, it delivers a blazing-fast, interactive user interface without the overhead of heavy JavaScript frameworks.
- 🛡️ Secure Authentication — Robust user registration, login, and session management.
- 📅 Comprehensive Event Management — Create, view, edit, and delete events seamlessly.
- ⚡ Real-Time Interactivity — Powered by Phoenix LiveView for instant UI updates and a native-like feel.
- 🔒 Protected Routes — Strict access controls ensuring only authenticated users can manage their events.
- 🏛️ Clean Architecture — Context-based domain design separating business logic from the web presentation layer.
- 💅 Beautiful UI — Styled with Tailwind CSS for a responsive, modern, and accessible design.
| Layer | Technology | Description |
|---|---|---|
| Language | Elixir | A dynamic, functional language for scalable and maintainable applications. |
| Framework | Phoenix | A productive web framework that does not compromise speed or maintainability. |
| Interactive UI | Phoenix LiveView | Rich, real-time user experiences with server-rendered HTML. |
| Database | PostgreSQL | The world's most advanced open source relational database. |
| ORM / Query | Ecto | A toolkit for data mapping and language integrated query. |
| Styling | Tailwind CSS | A utility-first CSS framework for rapid UI development. |
Follow these instructions to get a copy of the project up and running on your local machine for development and testing purposes.
Ensure you have the following installed on your system:
- Elixir (v1.15 or higher)
- Erlang/OTP (compatible with your Elixir version)
- PostgreSQL (running locally)
-
Clone the repository
git clone https://github.com/supun7buddhima/flowops.git cd flowops -
Install dependencies
mix deps.get
-
Database Setup Create and migrate your database. (This will also run
priv/repo/seeds.exsif available to populate demo data).mix ecto.setup
-
Start the Phoenix server
mix phx.server
-
Ready to go! 🎈 Visit
http://localhost:4000from your browser to see FlowOps in action.
A quick overview of the core project structure:
lib/
├── flowops/ # 🧠 Core Business Logic Layer
│ ├── events.ex # Events context (CRUD operations)
│ ├── accounts.ex # Accounts context (Users, Auth)
│ └── ...
└── flowops_web/ # 🌐 Web Presentation Layer
├── router.ex # Application routes and pipelines
├── controllers/ # Standard HTTP controllers
├── live/ # Phoenix LiveView modules
└── components/ # Reusable UI components (CoreComponents)
Contributions, issues, and feature requests are welcome! Feel free to check the issues page if you want to contribute.
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature) - Commit your Changes (
git commit -m 'Add some AmazingFeature') - Push to the Branch (
git push origin feature/AmazingFeature) - Open a Pull Request
Supun Dharmaratne
- GitHub: @supun7buddhima