Creating a frontend
Creating frontend for web applications based on the proprietary CMS system. Frontend created on the basis of a layout prepared in HTML, CSS, JavaScript. The template language is Twig, which is the default for the Symfony framework.
Types of web applications for which I created a frontend:
- landing page
- company site
- multilingual company website
- online shop
- page with announcements
- a website such as a web portal
- multisite; creating and publishing the content of many websites from one administration panel
Typical elements on a web application (website):
- pages:
- static pages, index of static pages
- home page, about us, contact, regulations, privacy policy, GDPR, etc.
- static pages, index of static pages
- article page, article index
- gallery, gallery index
- news, news index
- advertisement, advertisement index, advertisement search and filtering
- portfolio, list of projects in the portfolio
- events, calendar of events, registration or purchase of an event ticket
- recipes, recipe index, recipe search and filter
- sections: header, menu (main, footer), footer, blocks, media
- contact form
- popup: with regulations, consent to cookies, marketing content
- support for Google Maps
- elements for Search Engine Optimization (SEO); meta title, meta description, meta tags
- generating sitemap.xml
- searching for content on the site
- paging content on the site
- change the text size
- light, dark theme or high contrast
- internet radio on the site
- frontend for logged in user:
- user profile editing
- password change
- management of favorites
- adding content
- delete the profile
Implementation of the online store based on the eCommerce Sylius system:
- installation and configuration
- creating a frontend template based on the bootstrap theme: SyliusShopBundle
- frontend created on the basis of a layout prepared in HTML, CSS, JavaScript
- the template language is Twig, which is the default for the Symfony framework
- adjusting the administration panel
- creating templates for emails
- adding and configuring plugins: BitBagSyliusCmsPlugin, OdiseoSyliusBlogPlugin
Creating a backend
Creating administration panels for web applications based on the proprietary CMS system. Depending on the rights, the user has access to other panels.
Types of administration panels (CRUD) I have created:
- management of contacts obtained from the contact form
- CRM for customer management (e.g. customer notes, invoices, payments, attachments)
- content management: static pages, articles, blog, ads, gallery, portfolio, promotional coupons
- content management in different languages (translations)
- media and document management
- event management (e.g. bookings and registrations for an event)
- recipe management, book collection
- managing notifications for mobile devices (Android, iOS)
- management of advertisements displayed in the mobile application
- payment management
- calculating and showing statistics
- and many others
Creating commands for the CLI (command line) that execute background tasks on a schedule (see cron).
- sending emails
- sending push notifications
- various calculations: e.g. ad billing, statistics
- cleaning up the database: e.g. removing inactive users
Communication with users:
- creating email templates
- user registration
- email verification
- password reset
- order confirmation
- confirmation of registration for the event
- sending emails
- when the contact form has been correctly completed
- when booking, registering for an event, etc.
- sending notifications
Code generators using the Symfony Maker component, improving and accelerating work with repetitive tasks.
Types of code generators and the type of the generated file:
- template for controller (php)
- template for entity (php)
- template for repository (php)
- template for routes (yaml)
- template for CRUD panels (html.twig)
File exporters, i.e. generating files to the following formats: xml, pdf, cvs, xls.
API for mobile applications
Creating API for mobile applications based on the proprietary CMS system
Types of mobile applications:
- application with news and events
- application with recipes
- application as a mobile version of a web application (website)
- book collection management
- offline appointment scheduling app
- a loyalty app for a network of ice cream parlors
Typical API for mobile applications:
- authentication, authorization
- user management
- logging in, registration
- refreshing user tokens (access, refresh)
- password change and reset
- user email confirmation
- user account deletion
- user profile editing
- content management (e.g. static pages, news, photo galleries, events, promotional coupons, recipes, menu items)
- access to the resource collection
- single resource management (CRUD),
- searching, filtering, paging
- versioning of changes, cache
- managing your favorite content
- adding or removing etc.
- making reservations, registration for example for an event
- validation of data (e.g. from a form) sent by the user
Integrations with external services
- Internet payments:
- PayPal
- Przelewy24
- PayU
- XML import; import and synchronization of the product database for the Sylius online store. The product database comes from an external source in XML format
- User registration and login using external services; Google, Facebook, Apple
- Sending notifications to mobile devices (Android, iOS) using Google Firebase Cloud Messaging
- System Hosted SMS (HSMS); bulk SMS sending