yNotes est un gestionnaire de notes, d'emploi du temps et de devoirs qui vous permet d'accéder à toutes vos informations scolaires dans une interface moderne et intuitive. L'application actuelle est basée sur les APIs des sites École Directe et Pronote. Je travaille actuellement dur pour adapter l'application à d'autres "applications scolaires".
Téléchargez dès maintenant yNotes sur le Google Play Store !
yNotes est un projet ouvert et collaboratif ! N'hésitez pas à soumettre une pull request ou me contacter directement pour aider au projet (discord : JsonLines #0721).
yNotes n'est pas un client officiel et utilise directement les APIs d'applications scolaires. Vos identifiants sont chiffrés et stockés sur votre appareil, mais nous ne nous portons pas responsables en cas de sanction de l'application scolaire. De plus, les fonctionnalités proposées par yNotes peuvent varier à tout moment, par décision externe ou interne.
J'ai décidé de créer yNotes en constatant que les demandes des utilisateurs des applications scolaires n'étaient pas écoutées, et que les applications mobiles de vie scolaire étaient basiques, à l'interface peu élaborée. Bien que la propriété intellectuelle m'empêche de diffuser yNotes à grande ampleur, j'espère que les éditeurs des applications scolaires entendront un jour nos réclamations !
Les fonctionnalités de yNotes s'étendent chaque jour pour permettre d'être le plus efficace dans son travail, et l'interface est régulièrement revue pour être la plus intuitive possible.
- Accès au notes : Affichage des notes et des données liées, partage des notes (en cours), tri des notes
- Accès aux devoirs : Accès aux prochains devoirs, affichage des pièces jointes liées (en cours)
- Coloration des matières personnalisable
- Mode nuit
- Application hors ligne, nul besoin d'Internet pour accéder à ses notes
- Accès aux applications supplémentaires : mail et cloud (disponible sur École Directe)
- Ajout aux favoris de devoirs. (fonctionnalité d'épinglage)
Mise en place d'un "Quick menu" (menu rapide) pour accéder rapidement aux documents téléchargés(supprimé car non intuitif)
- Fonctionnalités supplémentaires dans l'affichage des devoirs, partage et recherche rapide par mot-clé (partenariat avec applications scolaires ?)
- Visualisation de l'emploi du temps et organisation de la vie d'étudiant
- yNotes web
Ajout de la foncionnalité envoyer des mails au Quick menu,devoirs favoris- Multicomptes(abandonné)
yNotes se veut multi compatible et ainsi permettre un portage vers n'importe quelle application scolaire à l'aide d'une API. Cette implémentation n'est pas encore faite et demande du travail, mais sera faite le plus rapidement possible pour permettre à n'importe qui de créer son parser vers une application scolaire. Peut-être même de rendre l'application internationale ? Note du 01/08 la connexion via Pronote est quasiment effective en connexion directe (?login=true à la fin de l'adresse ou sans ENT). L'intégration des ENT va bientôt commencer.
Space, pour espace de l'étudiant, est un algorithme qui permettrait à l'étudiant d'aménager sa vie en fonction de son emploi du temps tout en suggérant un plan de travail.
Soyons clair, Space n'est absolument pas implémenté, mais compte l'être le plus rapidement possible car il constitue une pièce maîtresse du projet yNotes.
Space se baserait sur l'emploi du temps de l'utilisateur, importé grâce aux APIs des applications scolaires. Puis ce dernier pourra ajouter manuellement les évènements, cours extrascolaires, activités auxquelles l'utilisateur participe régulièrement ou non. yNotes suggérera des idées d'organisation de rendez-vous, et évaluera le risque d'un rendez-vous non obligatoire si ce dernier se situe avant un contrôle important.
Sans devenir un laboratoire, Space devra se baser sur un algorithme intelligent, sans se montrer trop intrusif, ni collecter de données. En effet ces dernières ne doivent êtres stockées que localement, et ne peuvent être sujettes à des traitements extérieurs a l'application.
L'application est développée avec le framework Flutter, et donc développée en Dart.
Si vous êtes utilisateur et souhaitez télécharger l'application sur votre smartphone, vous pouvez :
- Télécharger la dernière release (.apk) ici
- Vous rendre sur le site de yNotes pour vous inscrire à la newsletter et être informé des dernières nouveautés et recevoir votre application
- Tester la dernière bêta pour tester les fonctionnalités en avant première ici
- Compiler vous même votre application
- Étant donné que les frais d'inscriptions obligatoires pour devenir Apple Developer sont hors budgets, vous ne pourrez pas trouver l'application sur l'App Store. Vous pouvez donc compiler l'application à l'étape suivante si vous possédez un Mac.
La compilation permet de créer une application interprétable par un appareil donné, dans notre cas votre smartphone à partir d'un code source.
Il est conseillé de procéder à l'installation guidée indiquée par la documentation officielle de Flutter.
Notez que pour compiler l'application pour iOS, il vous faut absolument un ordinateur Mac.
Téléchargez une version officielle du code source de l'application depuis cette page, si vous êtes utilisateur, préférez la branche stable, sinon vous pouvez essayer de compiler une version bêta de yNotes.
Ouvrez le dossier du code source dans votre éditeur favori (VSCode, Android Studio, XCode).
Assurez vous que votre téléphone est connecté à votre ordinateur si vous souhaitez directement compiler l'application sur ce dernier et vérifiez les conditions suivantes.
Suivez les étapes de compilation de la documentation officielle :
- Compiler pour Android
- Compiler pour iOS Vous devez disposer d'un compte Apple Developer gratuit (ou payant) pour installer l'application sur un appareil iOS
La documentation spécifique au développement vous permettant de modifier les layouts selon vos goûts, ajouter vos fonctionnalités, votre touche.
Le fichier principal (exécuté en premier) est /lib/main.dart
Tout le code peut être organisé dans des fichiers .dart, l'UI comme le backend, mais les layouts sont situés dans /lib/UI
décomposés par écrans (screens) et par composants (components).
Le traitement des données est maintenant effectué dans des parsers distincts situés dans /lib/parsers
Ces fichiers contiennent des classes étendues de la classe API disponible dans le fichier /lib/APIManager.dart
qui contient également toutes les classes importantes de l'application. L'ajout de fonctionnalités spécifiques nécessite une modification de l'APIManager ce qui est fortement déconseillé. Ainsi la fonction app()
permet l'ajout de fonctionnalités spéficiques en toute liberté.
Les ressources sont dans /assets
On y distingue les animations, (utilisant le moteur de rendu Flare, qui diffèrent des animations dans /lib/UI/animations
qui sont des animations utilisant le langage Dart) ainsi que les images et les gifs animés.
- Merci aux développeurs et bêta testeurs qui ont aidé à participer au projet en me suggérant des fonctionnalités et en montrant des bugs que je n'aurai sûrement jamais remarqués
- L'API Pronote est un portage de pronotepy, développée par bain que je remercie énormément pour ses explications et sa disponibilité :)
Je tiens à remercier chaque autre personne ne figurant pas dans cette section pour avoir testé yNotes, collaboré d'une manière ou d'une autre pour la création de l'application et m'avoir donné des idées pour l'améliorer.
taokann.one 🐛 🤔 📓 |
Florian LEFEBVRE 🐛 🤔 |
bain3 🤔 🔌 |
ShiyukiNeko 🤔 |
Vincent Moucadeau 💻 📓 |