zeba_academy_announcement
๐ข Zeba Academy Announcement
A reusable Flutter package for building modern Academy Announcement Systems.
Create beautiful announcement cards with:
- ๐ Notice cards
- ๐ฆ Priority levels
- โณ Expiry date tracking
- ๐ Rich announcement content
- ๐จ Modern Material UI design
โจ Features
๐ Notice Cards
Display announcements using clean and customizable cards.
Example:
Flutter Workshop
Learn Flutter package development.
5 days remaining
๐ฆ Priority Levels
Supports multiple announcement priorities:
| Priority | Description |
|---|---|
| ๐ข Low | General updates |
| ๐ Medium | Important notices |
| ๐ด High | Critical announcements |
| ๐ฃ Urgent | Immediate attention required |
โณ Expiry Date Support
Automatically detects expired announcements.
Example:
announcement.isExpired
Returns:
true / false
๐ Rich Announcement Content
Supports:
- Title
- Description
- Creation date
- Expiry date
- Priority badge
๐ฆ Installation
Add dependency:
dependencies:
zeba_academy_announcement: ^1.0.0
Run:
flutter pub get
๐ Usage
Import package:
import 'package:zeba_academy_announcement/zeba_academy_announcement.dart';
Create announcement:
final announcement = Announcement(
title: "Flutter Workshop",
content:
"New Flutter course starts Monday at 10 AM.",
createdAt:
DateTime.now(),
expiryDate:
DateTime.now()
.add(
const Duration(days:7)
),
priority:
AnnouncementPriority.high,
);
Display card:
AnnouncementCard(
announcement: announcement,
)
๐จ Example
ListView(
children:[
AnnouncementCard(
announcement:
Announcement(
title:
"Holiday Notice",
content:
"Academy will remain closed tomorrow.",
createdAt:
DateTime.now(),
expiryDate:
DateTime.now()
.add(
const Duration(days:1)
),
priority:
AnnouncementPriority.urgent,
),
),
]
)
๐งฉ Available Classes
Announcement
Main announcement model.
Properties:
title
content
createdAt
expiryDate
priority
AnnouncementPriority
AnnouncementPriority.low
AnnouncementPriority.medium
AnnouncementPriority.high
AnnouncementPriority.urgent
AnnouncementCard
Reusable UI widget.
AnnouncementCard(
announcement: announcement
)
PriorityBadge
Displays priority status.
PriorityBadge(
priority:
AnnouncementPriority.high
)
๐ Architecture
lib/
โโโ models
โ โโโ announcement.dart
โ
โโโ enums
โ โโโ priority.dart
โ
โโโ widgets
โ โโโ announcement_card.dart
โ โโโ priority_badge.dart
โ
โโโ utils
โ โโโ expiry_helper.dart
โ
โโโ zeba_academy_announcement.dart
๐งช Testing
Run tests:
flutter test
๐ก Use Cases
Perfect for:
โ Coding academies
โ Learning apps
โ School management apps
โ Course platforms
โ Community apps
โ Internal notification systems
๐ค Contributing
Contributions are welcome.
Steps:
-
Fork repository
-
Create feature branch
git checkout -b feature/new-feature
- Commit changes
git commit -m "Add new feature"
- Push branch
git push origin feature/new-feature
- Create Pull Request
๐จโ๐ป About Me
โจ Iโm Sufyan bin Uzayr, an open-source developer passionate about building and sharing meaningful projects.
Learn more about my work:
Connect:
๐ผ LinkedIn: https://www.linkedin.com/in/sufyanism
๐ Zeba Academy
Your all-in-one learning hub!
Explore courses and resources in:
- Coding
- Technology
- Development
Learn through practical tutorials, real-world projects, and hands-on experience.
Visit:
๐ 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 the GNU General Public License v3.0.
You are free to:
โ Use
โ Modify
โ Share
โ Distribute
Under the conditions of GPL-3.0.
See:
LICENSE
โญ Support
If this package helps your project:
โญ Star the repository
๐ฆ Publish your package
๐ค Contribute improvements
Thank you for using Zeba Academy Announcement โค๏ธ