bcongdon / bolero Goto Github PK
View Code? Open in Web Editor NEW:dancer: Construct your personal API
License: MIT License
:dancer: Construct your personal API
License: MIT License
Currently, permissions is handled at the tracker implementation level (check_auth
is set as a request preprocessor in Tracker.create_api()
).
This should be changed so that tracker permissions can be set at the tracker configuration level (i.e. config.json
)
Per #1, trackers will be objects instead of modules.
Thus, tracker loading will need to be updated from the naive importlib.import_module
approach.
It will probably be sufficient to do something like youtube-dl
's mass-import, and then selectively authenticate / activate the enabled trackers.
Trackers should be objects, instead of formless modules. They behave more like objects already, and it's more idiomatic to call duck-typed functions of a subclass to Tracker
than to a module.
Trackers should be able to do the following:
handleAuthentication()
scrape()
backfill()
Trackers should be distinct from their associated models, and should only have simple CRUD tasks on the actual data.
Plugins should be more like plugins than internal modules.
It's fine to have a list of modules as strings in a configuration file and import them via __import__
.
The idea is to have bolero be a relatively lean framework, and push a lot of the complexity / implementation out to the tracker plugins.
Next big push is to get the actual tests working.
#3 reduced the dependencies between the app and trackers, so it should be possible to unit test the trackers without having to load / startup the app. (If it isn't, then that's something to do too)
Not sure how much testing is necessary for an external api driven project like this, but something better than running the updateall
cli command would be good. ๐
Should have a simple "howto" guide on how to implement a new Tracker
Implement a Todoist tracker with similar functionality to the Wunderlist tracker.
Need to have some type of explanation as to what problem (API data warehousing) this project is trying to solve in the README.
MyFitnessPalTracker.backfill
should find the user's earliest logged day and start backfilling from there.
This is a bit difficult due to the way that the python module used to connect with MFP is structured.
Right now, we're just naively grabbing the last 1 year of history.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.