Family Dashboard is a Laravel + React application designed to help families organize events, chores, reminders, and family member profiles in a centralized workspace.
- Project Overview
- Tech Stack
- Key Features
- Getting Started
- Local Development
- Testing
- Project Structure
- REST Endpoints
- Database Design
- Future Roadmap
This application enables parents and children to collaborate around family activities and responsibilities.
- Parents can assign and manage chores, reminders, and events.
- Family members can create and edit events they own.
- Profile management supports basic user roles and permissions.
- The user experience is built with React, while backend logic uses Laravel.
- Backend: Laravel
- Frontend: React / TypeScript
- Database: MySQL / MariaDB (configured via Laravel)
- Package management: Composer and pnpm
- Build tooling: Vite
- Role-based permissions for parents and children
- Event creation, editing, and management
- To‑do and reminder assignment and tracking
- User profile management
- Support for family-wide sharing of tasks and schedules
- PHP 8.3+ (or the version supported by the Laravel setup)
- Composer
- Node.js 18+ / pnpm
- A database server (MySQL, MariaDB, SQLite, etc.)
-
Clone the repository:
git clone https://github.com/<your-org>/FamilyDashboard-Laravel-React.git cd FamilyDashboard-Laravel-React
-
Install PHP dependencies:
composer install
-
Install frontend dependencies:
pnpm install
-
Copy the environment file and configure your database:
cp .env.example .env php artisan key:generate
-
Run database migrations:
php artisan migrate
To start the Laravel backend and Vite frontend tooling:
php artisan serve
pnpm devThen open the development URL shown by your local server.
To build the frontend assets for production:
pnpm buildRun the Laravel test suite with PHPUnit:
php artisan testapp/– Laravel application source codeconfig/– Laravel configuration filesdatabase/– migrations, seeders, and factoriespublic/– public entry point and compiled assetsresources/js/– React frontend sourceroutes/– Laravel route definitionstests/– application tests
The application routes are defined under routes/web.php and routes/settings.php.
Currently, endpoint documentation is captured within the application route definitions. Common entry points include:
GET /– landing pagePOST /login– authenticate a userPOST /register– register a new userGET /dashboard– family dashboard viewGET /events– list eventsPOST /events– create eventPUT /events/{id}– update eventDELETE /events/{id}– delete eventGET /todos– list to-dosPOST /todos– create to-doPUT /todos/{id}– update to-doDELETE /todos/{id}– delete to-do
iduser_id– owner or creatornamelocationstart_datestart_timeend_dateend_timedescription
iduser_id– creatortitledescriptionassigned_user_id– user responsible for the taskstatus
idnameusernameemailpasswordstatus–parentorchildbirthdate
Potential future enhancements include:
- Family budgeting and expense tracking
- Meal planning and shopping lists
- Contact directory for extended family
- Announcements and messaging integration
- Chat support for family communication
- Mobile-friendly experience with location-aware features
- Weather integration and family trip planning