fullstack-examination-2024

command module
v0.0.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 4, 2024 License: MIT Imports: 2 Imported by: 0

README

Fullstack examination 2024

What is Fullstack examination 2024?

This is a repository for exams used to assess technical skills for hiring full-stack engineers (Golang).

Dev

You will set up the development environment using asdf, a tool for managing multiple language versions. If you are in an environment where asdf cannot be used, please install the necessary tools according to your environment.

Install
Install asdf

Getting Started | asdf

Install asdf plugins
asdf plugin add air
asdf plugin add golang
asdf plugin add golangci-lint
asdf plugin add gotestsum
asdf plugin add nodejs
asdf plugin add swag
Install asdf versions

Please install the versions listed in the .tool-versions file.

asdf install
Start Development Environment
backend
make dep-backend-local
make migrate
make serve-backend
ui
make dep-ui-local
make serve-ui

When you access http://localhost:3000/, the UI screen will be displayed.

Migration

Please run the migration process.

make migrate

If the migration fails due to the current state of the schema, please delete the database and run the migration again.

make reset-local-db migrate
Format

To maintain consistency in the code, formatting should be applied. Be sure to run it once development is complete.

make fmt
Swagger

Please create API documentation using Swagger.

make swagger

To generate documentation, you need to add comments to your Go files. Please refer to this documentation for the correct syntax and guidelines.

swaggo/swag: Automatically generate RESTful API documentation with Swagger 2.0 for Go.

While running make serve-backend, you can access http://localhost:1314/ to view the Swagger UI. Or alternatively, you can open docs/swagger.yaml to view the API documentation.

Test

Please run the tests.

make test-backend

examination

Please solve the tasks outlined in examination.md.

Documentation

Overview

Package main is the entry point of the application.

Directories

Path Synopsis
Package cmd provides the command line interface for the application.
Package cmd provides the command line interface for the application.
Package docs Code generated by swaggo/swag.
Package docs Code generated by swaggo/swag.
internal
common
Package common provides common functionality for the application.
Package common provides common functionality for the application.
db
Package db provides the database connection and migration functionality.
Package db provides the database connection and migration functionality.
errors
Package errors provides error codes for the application.
Package errors provides error codes for the application.
handler
Package handler provides request handling functionality for the application.
Package handler provides request handling functionality for the application.
model
Package model provides the data models for the application.
Package model provides the data models for the application.
repository
Package repository provides the database operations for the todo endpoint.
Package repository provides the database operations for the todo endpoint.
server
Package server provides the API server for the application.
Package server provides the API server for the application.
service
Package service provides the business logic for the todo endpoint.
Package service provides the business logic for the todo endpoint.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL