Make sure you have installed:
- PHP
- Composer
- Node.js and npm
- PostgreSQL
Also make sure PostgreSQL support is enabled in PHP.
In your php.ini file, these extensions should be enabled:
extension=pdo_pgsql
extension=pgsqlIf they are commented with ;, remove the ;, then restart your terminal/server.
You can check enabled PHP modules with:
php -mYou should see:
pdo_pgsql
pgsql
git clone https://github.com/TahaGHZ/apollo-todo.git
cd apollo-todocomposer installnpm installcp .env.example .envOn Windows PowerShell:
copy .env.example .envphp artisan key:generateThis project uses PostgreSQL.
Create a PostgreSQL database named:
apollo_todo
Using psql:
psql -U postgresThen inside PostgreSQL:
CREATE DATABASE apollo_todo;
\qYou can also create the database using pgAdmin.
Open the .env file and update the database section:
DB_CONNECTION=pgsql
DB_HOST=127.0.0.1
DB_PORT=5432
DB_DATABASE=apollo_todo
DB_USERNAME=your_postgres_username
DB_PASSWORD=your_postgres_passwordReplace your_postgres_username and your_postgres_password with your local PostgreSQL credentials.
php artisan migrateBuild the frontend assets:
npm run buildStart the Laravel server:
php artisan serveOpen the app in your browser:
http://127.0.0.1:8000
This app is configured for local testing.
Emails are written to the Laravel log file instead of being sent through a real email provider.
In your .env file, use:
MAIL_MAILER=log
MAIL_FROM_ADDRESS="noreply@apollo-todo.local"
MAIL_FROM_NAME="Apollo Todo"When testing email verification or password reset, check this file:
storage/logs/laravel.log
The verification or password reset link will appear inside the log file.
Note: The app is not deployed, so real email delivery is not configured.
- Register a new account.
- Log in.
- Create a project.
- Add tasks to the project.
- Edit, mark as done, or delete tasks.
- Log out and register another user to confirm each user only sees their own projects and tasks.