Arc – 65
We have our own in-house web framework built from ground up with great emphasis on scalability and performance for minimal cost. The framework is built in Go and truly is one of its kind.
arc65 is not a back-end framework, and no, it’s not a front-end framework either. To be honest, it’s more of a lightweight library with just
~1700 lloc for arc65 package,
~700 lloc for arctool.
It has built-in support for event based data communication between back and front ends via JSON. It clearly defines the roles of Pages and Modules and thier ability to effectively talk between them. This enables clean and scalable code.
Arc65 is a Go (Golang) web framework that was designed to solve the problems that we faced when developing. Our engineering efforts where dictated by the following goals, in order of importance;
We were also influnced by the following mantras:
- Avoid Magic
- Avoid Type Casting
- Avoid Reflection
Last but not least, regarding packages:
- Code seperation trumps code reusability
- Many small packages with related functions is better than a few large packages with unrelated function
- user tracking
- error handling
- template rendering
- less compilation
- less/css/js minification and concatenation
- middleware support via page/module inheritance
- css auto-prefixer
- user intents
- user authentication
- url routing
- load balancer ready
- database calls
- event based ajax/websocket user interface modules that communicate to the backend via JSON
- and much more
@ 5k req/sec. on a standard Amazon (AWS) EC2 instance.