Lab

My code laboratory...

Laboratory

Symfony API Platform

Symfony 4 "API Platform" framework - a basic setup

I was playing with API Platform framework, a set of tools to build and consume web APIs. I created basic enitities: user, product, productVariant, company, user permissions. I also configured JWT Authentication, Doctrine Filters and Symfony Security Voters

What is interesting here is different permissions assignment:

  1. User can be owner of a company (he can edit all products of this company).
  2. User can have role (like ROLE_ADMIN).
  3. User can have per-company role (can edit/view products of that particular company)

Technologies: PHP, PostgreSQL, Symfony, Doctrine, Docker, Docker Compose, API Platform, JWT Authentication, Doctrine Filters, Symfony Security voters .

Github: vatri/ap_test

Google Drive Api, Symfony Bundle

Google Drive API Bundle for Symfony 4

My first Composer package for connecting Symfony 4 apps with Google Drive API.

Features:

  • Authorize via Google API
  • Create a folder (recursively)
  • Check if a folder exists
  • Delete a file
  • List files
  • Copy a file to specific directory
  • Upload a file
  • Add "starred" flag to a file/folder

Technologies: PHP, Symfony, Composer/Packagist, Symfony Recipe, Google Drive API.

Github: vatri/Google-Drive-Bundle

Freelance Platform

My personal open source project. Goal of the project is to speed up freelance websites development by providing a flexible and quality Java Spring platform for further development.

Technologies: Java, Spring Boot, Hibernate ORM with MySQL, Thymeleaf, Bootstrap, Maven.

Website: vatri.org/freelance-platform
Github: vatri/freelancer-platform

E-commerce REST API

E-commerce REST API based on Java Spring, Spring Boot, Hibernate ORM with MySQL, Spring HATEOAS, Spring Fox (Swagger API docs), JWT and Redis.

Technologies: Java, Spring Boot, Hibernate ORM with MySQL, Thymeleaf, Bootstrap, Maven.

Github: vatri/spring-rest-ecommerce

Inventory Management Software

Simple desktop multi-platform JavaFX inventory management application.

Technologies: Java, Spring Boot, Hibernate ORM with MySQL, Thymeleaf, Bootstrap, Maven.

Github: vatri/InvMan

AngularJS 1.6 Bootstrap Alert

AngularJS 1.x module for easy showing a nice Twitter Bootstrap alert messages...

Technologies: Javascript, AngularJS

Github: vatri/AngularJS-Simple-Bootstrap-Alert