THE PLAN: Everything planned for Finalynx 👀 #27
MadeInPierre
started this conversation in
General
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
Hello! 👋
Thank you for your interest in this project 🎉
Please get a cup of coffee while learning what is planned for this project ☕ I'd be happy to get your feedback and change the development steps and/or the architecture accordingly.
🏁⚠️ This plan is also described in the Projects View, go check it out to see the current development status as well as any open issues to start contributing!
✔️ Milestone 1: Portfolio
Goal: Declare a custom tree, set fixed targets to each line, synchronize with Finary, and print a colorful tree 🎄.
Implementation steps
Hierarchybeing the main abstract class holding the item's parent.Node(Hierarchy)which also holds one target per node. It also renders the item to the console.Line(Node)objects add akeyto find the corresponding line in your Finary account and anamountvalue.Folder(Node)holds a list ofLine,Folder, andSharedFolderobjects and renders them in the console.Bucketis a list ofLineobjects that represent a shared pool.SharedFolder(Folder)takes a singleBucketwith atarget_amountand only takes the specified amount. OtherSharedFolderobjects below will use what's left in the bucket.Nodeaccepts aTargetSomething(Target)object that renders the amount with a color code based on the target's recommendation.fetchsubmodule calls Finary's API and simply populates eachLine'samountvalue by matching thekey.Assistantclass orchestrates the fetching and displaying process.✔️ Milestone 2: Publish to GitHub
Goal: Setup everything for a team-ready repository (linting, CI/CD, tests, docs, ...)
Implementation steps
pre-commitconfiguration so that everyone uses the same styling and formatting conventions.pre-commit, pushes corrections to PRs if needed, and automatically deploy new releases based on the commit messages following the conventional commits standard.🚧 Milestone 3: Analyzer
Goal: Show graphs I'd like to see in Finary such as:
Implementation steps
🚧 Milestone 4: Dashboard
Goal : Create a simple web dashboard to display graphs and interact with the portfolio.
Implementation steps
🔜 Milestone 5: Simulator
Goal: Start with a simple "fixed % per year" model and:
inflation - 1%for a fond euro,8%for stocks, etc). Some easy improvements could include confidence levels, like setting a worst-case and best-case bet for each line, or defining individual scenarios.Events(e.g. spend 10k for a project in 2030, buy a home with a loan in 2035, set the "retirement" event in 2060, ...).Models(e.g. when I buy a home with loan, gotta pay back each month for 25 years)Goals✨ to your simulation (e.g. Emergency fund, Retirement plan, kids' studies, ...) from a collection available in Finalynx:Models, available to choose from in Finalynx also. Hence, you will have the choice to set your own percentage for retirement with ModelA, or let Finalynx find it for you with ModelB. The models in your GSheets could be a good starting point!Targetswill probably become the static version ofGoals, e.g. you can set a fixed emergency fund or enable aGoalthat calculates it for you (and it may evolve through time! 😄)analyzerto show some colors (e.g. available/blocked portions)Implementation steps
To be defined.🔜 Milestone 6: Copilot
Goal: create a "fake AI" where Finalynx would generate a list of transactions each month (i.e. "how much money to move where") to maximize the simulation's end amount.
Implementation steps
To be defined.🔜 Milestone 7: Enhancements & Extensions
Again, please checkout the projects view for a more detailed plan (and this temporary TODO file for now).
Unfortunately,
analyzer,simulatorandcopilotare all empty so it'll be difficult to start contributing right away with a future-proof architecture. Let me know what you think of this plan (any additions or changes?), and we'll see how we can get things started!Beta Was this translation helpful? Give feedback.
All reactions