zeba_academy_project_builder πŸš€

A Flutter package for building and managing software projects with roadmaps, tasks, milestones, progress tracking, and project showcases.

Create structured development workflows, learning projects, and developer portfolios using reusable Flutter components.

Flutter Dart License


✨ Features

  • βœ… Project roadmap management
  • βœ… Task management
  • βœ… Milestone planning
  • βœ… Progress tracking
  • βœ… Showcase projects
  • βœ… Reusable Flutter widgets
  • βœ… Clean package architecture
  • βœ… Developer friendly APIs

πŸ“¦ Installation

Add the package to your pubspec.yaml:

dependencies:
  zeba_academy_project_builder: ^1.0.0

Run:

flutter pub get

πŸš€ Getting Started

Import the package:

import 'package:zeba_academy_project_builder/zeba_academy_project_builder.dart';

πŸ“Œ Create Project

final project = ProjectModel(

  id: "project_1",

  title: "Flutter Portfolio App",

  description:
      "Build a professional developer portfolio",

  tasks: [

    TaskModel(
      id: "task_1",
      title: "Create UI",
      completed: true,
    ),

    TaskModel(
      id: "task_2",
      title: "Add animations",
    ),

  ],

);

πŸ“Š Progress Tracking

The package automatically calculates project progress.

double progress = project.progress;

print(progress);

Example output:

0.5

βœ… Tasks

Create project tasks:

TaskModel(

 id: "task_1",

 title: "Build Dashboard",

 completed:false,

);

Update task:

controller.updateTask(
 "project_id",
 "task_id",
);

πŸ—ΊοΈ Project Roadmap

Create development roadmaps:

RoadmapModel(

 title:"Mobile Development",

 steps:[

  "Planning",

  "Design",

  "Development",

  "Testing",

 ]

);

🏁 Milestones

Create milestones:

MilestoneModel(

 id:"milestone_1",

 title:"First Release",

 deadline:
 DateTime.now(),

);

🎨 Showcase Projects

Display completed projects:

ShowcaseModel(

 projectName:
 "Flutter Application",

 imageUrl:
 "https://example.com/image.png",

 githubUrl:
 "https://github.com/example",

);

🧩 Widgets Included

ProgressCard

ProgressCard(
 progress:0.75,
)

TaskTile

TaskTile(

 title:"Complete UI",

 completed:true,

 onTap:(){},

)

MilestoneCard

MilestoneCard(

 title:"Version 1.0",

 date:DateTime.now(),

)

ShowcaseCard

ShowcaseCard(

 title:"My Project",

 image:"image_url",

)

πŸ“ Package Structure

lib/

β”œβ”€β”€ zeba_academy_project_builder.dart

β”œβ”€β”€ models/

β”‚   β”œβ”€β”€ project_model.dart

β”‚   β”œβ”€β”€ roadmap_model.dart

β”‚   └── showcase_model.dart


β”œβ”€β”€ controllers/

β”‚   └── project_controller.dart


└── widgets/

    β”œβ”€β”€ progress_card.dart

    β”œβ”€β”€ task_tile.dart

    β”œβ”€β”€ milestone_card.dart

    └── showcase_card.dart

πŸ§ͺ Testing

Run tests:

flutter test

Analyze:

flutter analyze

🀝 Contributing

Contributions are welcome.

Steps:

  1. Fork the repository

  2. Create a branch:

git checkout -b feature/new-feature
  1. Commit:
git commit -m "Add new feature"
  1. Push:
git push origin feature/new-feature
  1. Create Pull Request

πŸ‘¨β€πŸ’» About Me

✨ I’m Sufyan bin Uzayr, an open-source developer passionate about building and sharing meaningful projects.

Learn more:

🌐 Website:

https://sufyanism.com/

πŸ’Ό LinkedIn:

https://www.linkedin.com/in/sufyanism


πŸŽ“ Zeba Academy

Your all-in-one learning hub!

πŸš€ Explore courses and resources in coding, technology, and development.

Learn through:

  • Coding tutorials
  • Practical projects
  • Development resources
  • Hands-on experience

Main website:

https://zeba.academy

Coding resources:

https://code.zeba.academy

YouTube:

https://www.youtube.com/@zeba.academy

Instagram:

https://www.instagram.com/zeba.academy/


πŸ“œ License

This project is licensed under:

GNU General Public License v3.0

You are free to:

  • Use
  • Modify
  • Share
  • Distribute

under GPL-3.0 terms.

See the LICENSE file for full license details.


⭐ Support

If this package helps you:

⭐ Star the repository ⭐ Share it with developers ⭐ Contribute improvements

Thank you for using:

zeba_academy_project_builder ❀️