Zeba Academy Learning Community

A Flutter package for building learning communities with student profiles, posts, discussions, reactions, following system, and personalized learning feeds.

pub package License: GPL v3 Flutter


โœจ About

Zeba Academy Learning Community is a reusable Flutter package that helps developers create educational social platforms.

It provides ready-to-use community features:

  • Student profiles
  • Learning posts
  • Discussions
  • Comments
  • Reactions
  • Following system
  • Personalized learning feeds

Built with Flutter โค๏ธ for developers creating collaborative learning experiences.


๐Ÿ‘จโ€๐Ÿ’ป About Me

โœจ Iโ€™m Sufyan bin Uzayr, an open-source developer passionate about building and sharing meaningful projects.

Learn more:

https://sufyanism.com/

LinkedIn:

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


๐Ÿš€ Zeba Academy

Your all-in-one learning hub!

Explore coding, technology, and development resources.

Learn through:

  • Practical tutorials
  • Real-world projects
  • Hands-on experience
  • Developer resources

Main Website:

https://zeba.academy

Courses:

https://code.zeba.academy

YouTube:

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

Instagram:

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


๐Ÿ“ฆ Installation

Add dependency:

dependencies:

  zeba_academy_learning_community: ^0.0.1

Run:

flutter pub get

โœจ Features

๐Ÿ‘ค Student Profiles

Create student accounts with:

  • Name
  • Bio
  • Avatar
  • Followers
  • Following

Example:

Student(

 id:"1",

 name:"Sufyan",

 bio:"Flutter Developer",

 avatar:"image_url",

);

๐Ÿ“ Posts

Students can share learning content.

Example:

Post(

 id:"post1",

 authorId:"1",

 content:
 "Learning Flutter packages ๐Ÿš€",

 createdAt:
 DateTime.now(),

);

๐Ÿ’ฌ Discussions

Create conversations using comments.

Example:

Comment(

 id:"comment1",

 userId:"1",

 text:
 "Great explanation!",

 createdAt:
 DateTime.now(),

);

โค๏ธ Reactions

Engage with posts using reactions.

Available:

  • Like
  • Love
  • Celebrate
  • Helpful

Example:

community.react(

 "postId",

 "studentId",

 "like"

);

๐Ÿ‘ฅ Following System

Students can follow other learners.

Example:

community.follow(

 "studentId",

 "targetStudentId"

);

๐Ÿ“ฐ Learning Feed

Generate personalized learning feeds.

Example:

FeedView(

 controller: community,

 studentId:"1",

);

๐Ÿ›  Usage

Import:

import 'package:zeba_academy_learning_community/zeba_academy_learning_community.dart';

Create controller:

final community =
CommunityController();

Add student:

community.addStudent(

Student(

id:"1",

name:"Alex",

bio:"Mobile Developer",

avatar:"avatar_url",

)

);

Create post:

community.createPost(

Post(

id:"1",

authorId:"1",

content:
"Flutter is amazing!",

createdAt:
DateTime.now(),

)

);

๐Ÿ— Project Structure

lib/

โ”œโ”€โ”€ models/

โ”‚   โ”œโ”€โ”€ student.dart

โ”‚   โ”œโ”€โ”€ post.dart

โ”‚   โ”œโ”€โ”€ comment.dart

โ”‚   โ””โ”€โ”€ reaction.dart


โ”œโ”€โ”€ core/

โ”‚   โ””โ”€โ”€ community_controller.dart


โ”œโ”€โ”€ widgets/

โ”‚   โ”œโ”€โ”€ student_card.dart

โ”‚   โ”œโ”€โ”€ post_card.dart

โ”‚   โ”œโ”€โ”€ feed_view.dart

โ”‚   โ””โ”€โ”€ profile_view.dart


โ””โ”€โ”€ zeba_academy_learning_community.dart

๐Ÿ”Œ Backend Support

This package is backend independent.

You can connect it with:

  • Firebase
  • REST API
  • GraphQL
  • Supabase
  • Local Database

Recommended:

  • Firebase Authentication
  • Cloud Firestore
  • Firebase Storage

๐Ÿงช Testing

Run:

flutter test

๐Ÿค Contributing

Contributions are welcome.

Steps:

Create branch:

git checkout -b feature/new-feature

Commit:

git commit -m "Add new feature"

Push:

git push origin feature/new-feature

Create Pull Request.


๐Ÿ“„ License

Licensed under the GNU General Public License v3.0.

You are free to:

โœ… Use

โœ… Modify

โœ… Distribute

โœ… Improve

Any distributed modifications must remain open source under GPL.

License:

https://www.gnu.org/licenses/gpl-3.0.html


โญ Support

If this package helps you:

โญ Star the repository

โญ Share it

โญ Contribute improvements


Made with โค๏ธ by Sufyan bin Uzayr