GitHub
Tests: 12 • Commercial: 2 • Pet projects: 4 • Legacy: 4
Total: 22

.NET Framework

Test
2021

Project Request

ASP.NET MVC • C# • SQL Server
Idea of the project: if someone wants to order a project development, here you can send an application.
Test
2020

ProjectC

ASP.NET MVC • C# • JSON • jQuery
JSON data processing.
Test
2020

Vehicle Maintenance

ASP.NET MVC • VB.NET • JSON
Idea of the project: if someone wants to order a project development, here you can send an application.
Test
2019

Movie Navigator

ASP.NET MVC • VB.NET
Request information about movie from IMDB.
Test
2018

Customers Exchange

ASP.NET MVC • C# • SQL Server
Automated teller machine emulation.
Test
2016

ATM

ASP.NET MVC • C#
Automated teller machine emulation.

.NET Core

Pet project
2022

Mail Daemon

.NET 8 • Console • JSON
Utility to send mails with customizable settings.

Custom

Code
2024

Buns of code

.NET Framework • C# • JavaScript
Code snippets from my projects, ready to use; tiny tests; code examples.

PHP

Test
2024

Mediabox

PHP 8 • Laravel 11 • Vue.js • Composer • SQLite
Test project for media files management.
Test
2020

Loan Castle

PHP • MariaDB
Jums jāizstrādā kāda lielāk projekta prototips. Izstrādājot prototipu, paturiet prātā, ka projektam attīstoties, šo prototipu varētu vajadzēt pilnveidot.
Test
2020

Content Management

PHP • MySQL • AJAX
Создать простой сайт, где будет страница с формой для авторизации и страница для авторизованного пользователя.
Test
2019

Laravel

PHP • Laravel • Vue.js • Composer • SQLite
Izveidot aplikāciju, kura ik pēc noteikta intervāla (60 sekundes) veic ierakstu datubāzē izmantojot Laravel freimworka iebūvēto funkcionalitāti.
Test
2019

Phone Check

PHP • JavaScript • JSON • Docker
Implement application to detect country by phone number.

Frontend

Test
2021

Forex Wall

npm • React
For this exercise, what we need is a simple live wall for tracking currencies.

Business projects

Commercial
2008

Certification Center

.NET Framework 4.8 • ASP.NET Web Forms • C# • LINQ • SQL Server • ADO.NET • Dapper • JavaScript • jQuery • Git
Transport registration and certification services in Latvia, Customer Relationship Management.
Commercial
2000

Amerikas Auto

.NET Framework 4.8 • ASP.NET Web Forms • C# • LINQ • SQL Server • ADO.NET • Entity Framework • JavaScript • jQuery • Git
Car service and spare parts for all USA and European car models, Customer Relationship Management.

Pet projects

Pet project
2023

Geolocation Assistant

.NET 8 • ASP.NET Core • C# • Web API • JSON • Git
Website for determining geolocation by IP or geotagged photo.
Pet project
2008

Web Dynamics

.NET Framework 4.8 • ASP.NET Web Forms • C# • LINQ • Web API • JSON • SQL Server • Dapper • JavaScript • jQuery • SVG • Git
Software development blog. Articles, books, videos, content management.
Pet project
2000

Blackball

.NET Framework 4.8 • ASP.NET Web Forms • C# • LINQ • Web API • JSON • XML • SQL Server • Dapper • JavaScript • jQuery • SVG • Git
My entertainment portal created from scratch.

Good old times

Legacy
2000

DOS Clock

Turbo Pascal • Assembler
Digital clock.
Legacy
2000

BrainOut

Turbo Pascal • Assembler
Tank battle game.
Legacy
1999

Airport Administrator

Turbo Pascal
Курсовая работа в институте.
Legacy
1998

Atomizer

Turbo Pascal • Assembler
Atomizer, aka «Studio2D». Graphic raster editor. AGI is my own «Atomizer Generated Image» file format.

Project Request

2021 Test

Idea of the project: if someone wants to order a project development, here you can send an application.

ASP.NET MVC C# SQL Server
Information
Source code
  Core
Root / ProjectRequestTest.Web / GeneratePDF.ashx.cs
using ProjectRequestTest.Core; using iTextSharp.text; using iTextSharp.text.pdf; using System; using System.IO; using System.Web; namespace ProjectRequestTest.Web {     public class GeneratePDF : IHttpHandler     {         public void ProcessRequest(HttpContext context)         {             var requestIdentifier = Helpers.GetVar("id");             if (requestIdentifier > 0)             {                 var projectRequestService = new ProjectRequestService();                 var requestItem = projectRequestService.GetRequestByIdentifier(requestIdentifier);                 if (requestItem.Id == 0)                 {                     context.Response.ContentType = "text/plain";                     context.Response.Write("Request for the project not found.");                 }                 else                 {                     context.Response.Clear();                     context.Response.ContentType = "application/pdf";                     context.Response.AddHeader("content-disposition", $"attachment;filename=ProjectRequestTest_{requestIdentifier}.pdf");                     context.Response.Cache.SetCacheability(HttpCacheability.NoCache);                     var document = new Document(PageSize.A4);                     var baseFont = BaseFont.CreateFont(Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.Fonts), "ARIAL.TTF"), BaseFont.IDENTITY_H, BaseFont.NOT_EMBEDDED);                     PdfWriter.GetInstance(document, context.Response.OutputStream);                     document.Open();                     var titleFont = FontFactory.GetFont("Arial", 24, Font.BOLD);                     var boldTextFont = new Font(baseFont, 12, Font.BOLD);                     var textFont = new Font(baseFont, 10);                     document.Add(new Paragraph("Sergey Drozdov :: Test", titleFont));                     var paragraphTable = new Paragraph();                     paragraphTable.SpacingBefore = 2;                     var infoTable = new PdfPTable(2);                     infoTable.TotalWidth = 500f;                     infoTable.HorizontalAlignment = 0;                     infoTable.SpacingBefore = 10;                     infoTable.SpacingAfter = 10;                     infoTable.DefaultCell.Border = 0;                     infoTable.SetWidths(new float[] { 5f, 10f });                     infoTable.AddCell(new Phrase("Date created:", boldTextFont));                     infoTable.AddCell(new Phrase(requestItem.DateCreated.ToString("ddd dd.MM.yyyy HH:mm"), textFont));                     infoTable.AddCell(new Phrase("Your name:", boldTextFont));                     infoTable.AddCell(new Phrase(requestItem.ClientName, textFont));                     infoTable.AddCell(new Phrase("Email:", boldTextFont));                     infoTable.AddCell(new Phrase(requestItem.Email, textFont));                     infoTable.AddCell(new Phrase("Phone number:", boldTextFont));                     infoTable.AddCell(new Phrase(requestItem.PhoneNumber, textFont));                     infoTable.AddCell(new Phrase("Project type:", boldTextFont));                     infoTable.AddCell(new Phrase(requestItem.ProjectType.ToString(), textFont));                     infoTable.AddCell(new Phrase("Description:", boldTextFont));                     infoTable.AddCell(new Phrase(requestItem.Description, textFont));                     paragraphTable.Add(infoTable);                     document.Add(paragraphTable);                     document.Close();                 }             }             context.Response.End();         }         public bool IsReusable         {             get             {                 return false;             }         }     } }