3

Opinions

Hello, I’m considering building a web framework.

My ideal features would be:
Customizable authentication system(considering using a jwt lib)
Embedded DB(bolt db)
ORM( writing my own)
REST api to DB (via code generator)
Code generator(generation of models and views via cli)
GUI to db(some admin dashboard)
CORS(web service right?)

Why?
Ease of development
Fast prototyping of small-medium web services.
Fun.

My question is, do i have to many things on my platter? Should i narrow it down into less featured framework? What feature should I focus on? How should i benchmark it? Should i write tests for absolutely everything or just for exported methods? What should i take into consideration when developing ORM API, Auth API...

The language is Go

Thank you for your input

Comments
  • 1
    Create Agile stories that you can then tackle 1 by 1, otherwise it will never gets finished. Release early and often, and write tests for the most important parts. Are you considering open source?
  • 0
    @sergiolarosa89

    Cross-platform, performant, ease of deployment as is only one binary and I enjoy writing go
  • 0
    @Edwin88

    Is it would be open-source, i already have an MVP, but is not quite there yet

    What would be the minimum list of feature to consider before releasing it?
  • 0
    @Artemix this framework would be mostly designated to develop web services and i imagined jwt tokens would be simple to implement while obtaining back the needed security.

    The auth flow would be simple the

    1.parse token from request hearders
    2. Decode the token and obtain required creds to sign in the user

    The generation of tokens will be handled by a library as adding a jwt on my stack will greatly increase the time to develop it
  • 0
    @Artemix i mean http json api

    For example querying one of the generated app would look like this

    curl localhost/api/users?id=1

    And that should return a json serialized user Model
  • 1
    I think it is good to work incrementally. I would start with just the REST api and the easy use then add features like authentication and dbs. Also do you really need to make an ORM(saying this from experience), maybe the user can work with a go SQL library for know? And then the cherry on the cake would be the ORM in the future?
    I believe that step by step is the best option but always thinking about how useful is this? And I am reinventing the wheel again?? (does a library already exist? Is it missing something?)
    Good luck!
  • 0
    To benchmark web framework, there is something called Tech Empower where almost all web framework around are tested. Submitting your framework would be ons of the last steps but along the way you can always try it out with their tests.
  • 0
    @Chewy8

    The idea is not to code much, The closest thing i’ve seen to i want to make is ponzu cms, but is extremely hard to develop on top of it, or extend generated applications, or extend any part of the application. And orm i figured it wouldn’t be that hard considering that is embedded db, and i would have to deal with only one API. Although you have a point
  • 0
    There are tons of web frameworks out there - if its for fun go ahead you will still learn a lot but if your aim is publicity or money i’d caution you to think of something else because i literally cannot count all the frameworks ive seen, just adding another one that does a bit of the same will be fun to code but at the end you might feel you wasted your time :/ maybe learn something new completely u might end up liking it :)
  • 1
    The fun thing about standards is, there are so many to choose from!
Add Comment