An opinionated Java framework for building production-grade, Spring-powered applications and services with minimal setup.
spring-projects/spring-framework
The foundational Java framework for building enterprise applications, providing dependency injection, MVC, and infrastructure support for the wider Spring ecosystem.
- Stars
- 60,296
- Forks
- 38,752
- Open issues
- 514
- Last commit
- 9 hours ago
What is it?
Spring Framework is the foundation for the Spring family of projects. It provides the infrastructure needed to build enterprise Java applications across a wide range of scenarios and architectures, so developers can focus on business logic instead of plumbing.
The project is written in Java and is the base layer that other Spring projects build on. Its reference documentation covers the overview, API reference, and guides for the core modules, and the repository also includes build instructions and CI workflows for contributors who want to build from source.
The framework is licensed under Apache 2.0 and is commonly referred to simply as "Spring" when discussing the broader ecosystem.
Key features
- 01Provides dependency injection and inversion of control for Java applications.
- 02Includes Spring MVC for building web applications.
- 03Serves as the base layer for the broader family of Spring projects.
- 04Offers official reference documentation and API docs.
Use cases
- Building enterprise Java backend applications.
- Developing web applications and REST services with Spring MVC.
- Using as a foundation for other Spring projects such as Spring Boot or Spring Data.
Quick start
- 1
Read the Access to Binaries wiki page for artifacts or a distribution zip
- 2
Read the reference documentation to get started
- 3
Build from source following the CONTRIBUTING.md instructions
Things to know
- The README does not provide a simple install command; using it typically means adding Maven or Gradle dependencies or building from source.
- It is a large framework with a broad feature set that can take time to learn.
Topics
FAQ
- What is spring-framework?
- The foundational Java framework for building enterprise applications, providing dependency injection, MVC, and infrastructure support for the wider Spring ecosystem. Spring Framework is the foundation for the Spring family of projects. It provides the infrastructure needed to build enterprise Java applications across a wide range of scenarios and architectures, so developers can focus on business logic instead of plumbing.
- Is spring-framework free to use? What license does it have?
- spring-framework is open source under the Apache-2.0 license. Check the license terms before using it in commercial products.
- Is spring-framework still maintained?
- Actively maintained. The last commit to spring-framework was on Oct 21, 2026.
- What can I use spring-framework for?
- Building enterprise Java backend applications. Developing web applications and REST services with Spring MVC. Using as a foundation for other Spring projects such as Spring Boot or Spring Data.
- How do I install spring-framework?
- Read the Access to Binaries wiki page for artifacts or a distribution zip Read the reference documentation to get started Build from source following the CONTRIBUTING.md instructions
- Where can I get spring-framework?
- The source code and installation instructions are on GitHub: https://github.com/spring-projects/spring-framework
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
A high-level Python web framework that encourages rapid development and clean, pragmatic design.
A PHP web application framework with expressive syntax, covering routing, ORM, migrations, queues, and real-time broadcasting.
A progressive Node.js framework for building efficient, scalable server-side applications in TypeScript or JavaScript.
Ruby on Rails is a full-stack MVC web framework for building database-backed web applications in Ruby.
A Chinese-language Java backend interview guide covering CS fundamentals, databases, distributed systems, system design and AI application development.