Last week, we covered the last missing pieces to complete the most basic version of our backend.
Due to the length of the series header, I am going to end this series here and start a new one covering frontend topics.
Topics in this series
- Generating a basic rails backend with basic models.
- Writing a very rudimentary test suite to help automate testing.
- Generating base GraphQL objects and types.
- Writing basic GraphQL queries.
- Building basic GraphQL mutations.
- Authentication using a sessions controller and JWT.
Incomplete Topics
- Proper authorization. At the moment, we have a very rudimentary authorization system that simply blocks all unauthenticated requests to the GraphQL endpoint.
- A complete test suite, including controller testing.
- More advanced GraphQL queries and mutations, including a detailed explanation of how to do polymorphic queries in GraphQL.
All of the topics above should receive a more complete coverage than I've been able to give due to time and space constraints.
If you want me to write in greater detail about one of the topics above, simply let me know in the comments, and I will consider writing about it.
What’s next
Starting next week, I will be covering frontend development. We will start by breaking down mock ups to create a component hierarchy. We will be building the frontend using React. If you want more details, checkout my initial post for details about what the next part of the series will cover.
As always, you can view the code for the backend up to this point in this GitHub repo.
Miniforum
Miniforum is a small Forum app built for a blog series on dev.to: Build a Forum App, from code to Deploy.
Features
- Sign up as a user to post questions/answers
- Like posts or replies to express appreciation for the question
- Ranks users and topics according to the number of people who have liked
Stack
- Ruby on Rails
- GraphQL
- Minitest
- TravisCI
See full details of the whole application stack here.
Installation
- clone the repo
git clone https://github.com/speratus/miniforum.git
- install the dependencies
bundle install
- run the server
rails s
Thanks for sticking with me for so long, and I hope to be back with a more detailed post next week.
The next series starts with this post:
Top comments (0)