zeba_academy_learning_journal 0.0.1 copy "zeba_academy_learning_journal: ^0.0.1" to clipboard
zeba_academy_learning_journal: ^0.0.1 copied to clipboard

A Flutter learning journal package with daily notes, learning goals, reflections, tags, search and export features.

Zeba Academy Learning Journal šŸ“šāœØ #

A Flutter package for creating a powerful learning journal experience with daily notes, learning goals, reflections, tags, search, and export functionality.

Build better learning habits by documenting progress, tracking goals, and reflecting on your journey.


Features šŸš€ #

āœ… Daily learning notes āœ… Learning goals tracking āœ… Reflection entries āœ… Tag-based organization āœ… Search journal entries āœ… Export journal notes āœ… Clean reusable Flutter widgets āœ… Developer-friendly API āœ… Lightweight and customizable


Installation #

Add this package to your pubspec.yaml:

dependencies:
  zeba_academy_learning_journal: ^0.0.1

Then run:

flutter pub get

Usage #

Import the package:

import 'package:zeba_academy_learning_journal/zeba_academy_learning_journal.dart';

Create Journal Controller #

final journal = JournalController();

Add Daily Note #

journal.addEntry(

  title: "Flutter Learning",

  content:
  "Today I learned Flutter package development",

  reflection:
  "I improved my understanding of reusable components",

  tags:
  [
    "flutter",
    "development",
    "learning"
  ],

);

Display Journal Entries #

ListView.builder(

itemCount: journal.entries.length,

itemBuilder:(context,index){

final entry =
journal.entries[index];


return JournalCard(
entry: entry,
);

}

);

Search Entries #

final results =
journal.search(
"Flutter"
);

Search works with:

  • Title
  • Content
  • Tags

Filter By Tags #

final flutterNotes =
journal.filterByTag(
"flutter"
);

Delete Entry #

journal.deleteEntry(
entryId
);

Export Notes #

Export all journal entries as a text file:

await ExportService.exportJournal(
journal.entries,
);

The exported file can be shared using the device sharing system.


Widgets Included #

JournalCard #

Displays journal entry cards.

JournalCard(
 entry: entry,
);

JournalEditor #

Ready-made journal input form.

JournalEditor(

onSave:
(title,content,reflection,tags){

 journal.addEntry(
 title:title,
 content:content,
 reflection:reflection,
 tags:tags,
 );

}

)

JournalSearch #

Search widget.

JournalSearch(

onSearch:(query){

final result =
journal.search(query);

}

)

Folder Structure #

lib/

src/

 ā”œā”€ā”€ models/
 │    └── journal_entry.dart

 ā”œā”€ā”€ controllers/
 │    └── journal_controller.dart

 ā”œā”€ā”€ services/
 │    └── export_service.dart

 └── widgets/
      ā”œā”€ā”€ journal_card.dart
      ā”œā”€ā”€ journal_editor.dart
      └── journal_search.dart

Requirements #

Flutter:

>=3.0.0

Dart:

^3.12.0

Roadmap šŸ›£ļø #

Upcoming features:

  • āŒ Local database support
  • āŒ Hive storage
  • āŒ JSON backup
  • āŒ Markdown notes
  • āŒ Learning streaks
  • āŒ Calendar journal view
  • āŒ Mood tracking
  • āŒ Dark mode support
  • āŒ Cloud sync

About Me #

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

You can learn more about me and my work:

🌐 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 practical skills through:

  • Curated tutorials
  • Real-world projects
  • Hands-on development

Level up your tech journey today! šŸ’»āœØ

Main Website:

https://zeba.academy

Learning Platform:

https://code.zeba.academy

YouTube:

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

Instagram:

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


Contributing #

Contributions are welcome!

Steps:

  1. Fork the repository

  2. Create a feature branch

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

License #

This project is licensed under the GNU General Public License v3.0 (GPL-3.0).

You are free to:

āœ… Use āœ… Modify āœ… Share āœ… Distribute

Under the terms of the GPL-3.0 license.

See the LICENSE file for details.


Made with ā¤ļø using Flutter

Ā© Zeba Academy

0
likes
130
points
67
downloads

Documentation

API reference

Publisher

verified publisherzeba.academy

Weekly Downloads

A Flutter learning journal package with daily notes, learning goals, reflections, tags, search and export features.

Homepage

License

GPL-3.0 (license)

Dependencies

flutter, intl, path_provider, share_plus, uuid

More

Packages that depend on zeba_academy_learning_journal