benjaminlukeclark / monsternames-api Goto Github PK
View Code? Open in Web Editor NEWAPI hosted at https://monsternames-api.com/
License: GNU General Public License v3.0
API hosted at https://monsternames-api.com/
License: GNU General Public License v3.0
Is your feature request related to a problem? Please describe.
At the moment there's no data sanitisation on the API backend. New records are create via:
peewee.mode.create()
And looking at the (docs)[http://docs.peewee-orm.com/en/latest/peewee/api.html#Model.create] I'm not sure this does automatic sanitisation.
Doing this on the backend will ensure that this cannot be bypassed in the provided frontend, and will ensure sanitisation if the API is interacted with programatically.
Describe the solution you'd like
A single new method on the endpoint class that sanitises a string for input into the database.
Describe alternatives you've considered
Coding this in the provided frontend. However, this would not cover all possible use cases.
Additional context
This is currently not a major issue as only 2 individuals have API keys to input to the database, with one of them being myself.
Is your feature request related to a problem? Please describe.
NA
Describe the solution you'd like
Amend the "Home" page to have a dynamically generated table instead of just displaying the raw json. Table should be similar to the below:
Monster | First Name | Last Name |
---|---|---|
Goatmen | Fluffy |
On each click a record is added to the table. Ensure that there's a new "Clear table" button to stop this getting too cluttered.
If an error is encountered then all the headers should be changed and coloured red. On a click after an error then this should change back to normal if the query was successful.
Also amend the Add Names page to have similar functionality, where results are displayed in an easy to read table rather than the current jaw JSON. Potentially have this amend to the table as well, and a new clear results button.
Describe alternatives you've considered
NA
Additional context
NA
Is your feature request related to a problem? Please describe.
NA
Describe the solution you'd like
A new endpoint within the API that provides the following functionality:
Describe alternatives you've considered
NA
Additional context
Clear documentation is already on the website. However, having this in programmatic form would prove useful for individuals attempting to build upon this API.
Is your feature request related to a problem? Please describe.
NA
Describe the solution you'd like
Add a rudimentary stats gathering to the API to gather:
Add items to the frontend:
Describe alternatives you've considered
Publishing stats separately as a Grafana dashboard, but that defeats the object of having everything on one web page.
Additional context
Contributions data may already be gathered via simple MySQL commands. This will require more tables in the database to pull off, so deployment will need another SQL configure run.
Is your feature request related to a problem? Please describe.
Conventions for new names are stated clearly in the first release but no-where else. This needs to be on the website in relevent sections (contribution guide and add names) to ensure consistency if more contributors are added.
Describe the solution you'd like
On addNames page:
Describe alternatives you've considered
Placing info in the readme or linking back to the original release... but of these are not particularly user friendly. It may also be useful to add this as an extra endpoint for querying programmatically.
Additional context
This isn't so much an issue right now, where it's just myself and one other person contributing, but is certainly required to ensure this scales.
Is your feature request related to a problem? Please describe.
NA
Describe the solution you'd like
A place in the readme and website that links known Projects that utilise the API.
Describe alternatives you've considered
NA
Additional context
Known Projects already:
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.