đź““ Capstone Prep: What to Expect
There are many possibilities for a capstone project that intersects both your interests and industry trends. This lesson will walk through a few ideas that might help you form an idea if coming up with something on your own is proving to be a little difficult. The main goal with this capstone project is to give you a project that you can leverage for career preparedness, so keep your own goals in mind while reading this lesson.
Let's explore some starting points that could serve as solid foundations for your project.
Project Ideas​
Ready to brainstorm? Here are a few examples of projects past students have built during Team Week. You're not required to choose from this list, of course (although you may, if something really speaks to you!), this is only to begin your own brainstorming:
Planning Activities​
Sites and applications that help plan:
- Vacations
- Camping trips
- Road trips
- Weddings and other events
- Pub crawls
- etc.
Lending a Hand​
Sites and applications that aim to help people out, such as:
- Locate stolen bike
- Reporting/searching for missing pets
- Organizing/compiling resources for at-risk populations
- Helping people prepare for/respond to natural disasters
Connect People​
Sites and applications that aim to bring people together, such as:
- Helping musicians find other musicians for jam sessions
- Locating puppy playdates
- Dating sites of all varieties, themes, focuses and interests
- Interest-based meetups and events
- Communication tools, like chat rooms, web forums, and more
- Virtual study groups and other learning tools
Games​
Playable games, for instance:
- Text-oriented games like "Choose your own adventure"-style storytelling games
- RPGs
- Word and math games
- Turn-based games
- Oregon Trail-style side-scrollers
- Digital versions of classic favorites like Clue, Poker, Magic, Chess, Monopoly, Breakout, etc.
Working with specific libraries, frameworks, or APIs​
Some students choose to work with specific libraries, frameworks or APIs to build out games, tooling, or an experience. There are so many libraries out there to explore! For instance:
- Using Three.js to make a 3D model or experience
- Using Unity game engine to make a game
- Using music libraries or the Spotify API (or another service) to build out web apps that visualize, track, or make music.
Building a website with a new framework​
Developer Tooling, for instance:
- A VS Code color theme or other type of extension
- An npm package
- A Discord bot
- A browser extension
Tracking, Aggregating, or Visualize Data​
Applications that help track and manage data of some kind, such as:
- Food diaries
- Workout tracking
- Mood trackers
- Or applications that do something with outside data pulled from an API. Check out this list of APIs for ideas.
- Productivity Tools
- Websites aimed to help make you more productive, like:
- Checklists
- Organizers
- Note-taking tools
- Crowd-sourced to-do lists, or grocery shopping lists
- Point of Sale systems
Websites for Real People​
Additionally, past students have created functioning websites or applications for family and friends' small local businesses, including catering companies, dog groomers, and more.
What Epicodus Recommends​
There are a few criteria that we think students do best to consider implementing into their projects to come out with a well-rounded project. Here are some bullets and examples. Note that not all of these necessarily go together, nor are any of them required for you to include in your project.
Push your Boundaries​
Your project could be something outside your comfort zone, challenging you to acquire new skills and deepen your understanding of certain technologies. Pushing boundaries not only sparks personal growth but also results in a project that truly reflects your evolving capabilities.
- Use a tool or language we haven’t covered, like Python or Swift
- Develop for a platform that we haven’t covered, such as a Mobile application
- Focus on accessibility or criteria that institutions look for in successful applications
Focus on Design​
Think about creating a sleek and functional website using modern design or impressive visuals. This not only demonstrates your coding prowess but also highlights your design sensibilities. A visually appealing application serves as a testament to your holistic approach to web development.
- Create a portfolio that showcases your other projects, while flexing your design on your own person website
- Create a data visualization project that takes information from an API and displays it intuitively to the user
- Make your application responsive for both web and mobile users via media queries or other responsive design principles
Focus on Data​
Consider an application that integrates a database with a front-end interface. This type of project allows you to dive into the intricacies of data management while developing a user-friendly interface for a seamless user experience.
- Create a database that handles secure user information in a way that keeps it safe and secure
- Create a role-based database that allows for users and administrators to use the database in different ways
- Create your own API with verbose data sets that can be delivered to the user intuitively
Stay Trendy​
Staying on top of industry trends, you might opt for a project that utilizes in-demand technology like React.js. This ensures your project aligns with current industry needs, making you a more competitive candidate in the job market.
- Consider using React.js, Next.js, or another library
- Consider using the language that is utilized in your area. For example, C# is saturated in the Seattle area because of Microsoft
- Consider using AWS or other cloud-based architecture in your application
Please note that these technologies that are "trendy" or "modern" will change constantly and quickly. Take a look back at the previous lesson Capstone Prep: Using Employable Skills and use current job postings to get a better expectation as to what those technologies might be right now.
You might also want to reference the Career Services lesson on Identifying Important Skills.
Get Real Practice​
For those interested in real-world applications, consider a project that meets a client’s need – perhaps a website for a friend's passion project or a local business. This adds a dynamic layer to your capstone, involving communication, feedback, and the satisfaction of delivering a product tailored to someone else's needs.
Additionally, consider make it a goal to publish or release your application for real users to consume.
- Local barbershops or smaller businesses might be interested in a website overhaul
- Perhaps a friend or colleague is interested in making an application for their hobby, such as a Dungeon Master application for D&D sessions
- If making a storefront, explore secure payment methods through services like Square
- Intend to release whatever application you're making, and certify that it's portfolio ready and polished
Practice your Passions​
It’s really easy to get bogged down in a mundane task, or burn yourself out trying to create an application that you’re not interested in. Really focus on what makes you you. Bring those passions with you to the computer and lean into them, and don’t be afraid to fail or change course later.
- If you enjoy making your applications look as good as they function, explore animations or unique interactions for the user experience
- If you have a hobby or interest that could be made easier with an application, focus on fixing your own real-world problems
- Bring your personality to what you’ve created and showcase your strengths
Do Research​
Lasty, you most likely know that Epicodus instructors won’t be there forever to answer a question you might have - and eventually, you’ll have questions that we can’t answer at all. By the time you’re leaving Epicodus, we hope that you’re a self-sufficient explorer and learner that can approach any problem with the growth mindset.
- If the tools you know don’t seem to fit the problem, find a new tool and try it out
- If there are things that you don’t like about C#, or JavaScript, explore to see if an alternative could do what you want better
- If you want to switch from Mobile and Web Development to something else entirely, leverage your skills to approach a new problem
- Always, always, always look at documentation and keep exploring
In essence, your capstone project is an opportunity to showcase your skills, learn something new, and make a real impact. Use these starting points as springboards to craft an idea that excites you and leaves a lasting impression. The journey begins now – let your creativity flow!