
Saint-Cyprien, Quebec Web Design & Development Articles
Latest articles from around the web
In this article, We will learn about Add Color Picker in Magento 2 Admin configuration using the system.xml file. Which one admin can select the value from the color picker to show dynamic color. Step-1: Create adminhtml_system_config_edit.xml at app/code/Vendor/ColorPicker/view/adminhtml/layout Step-2: Create system.xml at app/code/Vendor/ColorPicker/etc/adminhtml Step-3: Create Colorpicker.php at app/code/Vendor/ColorPicker/Block Hope this will help you. Thanks [...]
Discover the benefits of content makering and how you can use it to grow your business, increase leads, sales and ROI
Shopify Marketplace Mobile app- It enables the admin to quickly turn their live marketplace website into mobile app users. Sellers can quickly navigate their Dashboard, Order History, and manage their products and orders as a result. Furthermore, the buyer can also purchase seller products using the default functionalities of Shopify. This incredible application enables businesses [...]
This is useful. Adsvise is a free-to-use website, that makes the content specifications of the different services out there available as clear and concise as possible. You are not sure which formats, measurements, and sizes you can use for an HTML5 ad on Google Adwords? Ask Adsvise. "Stopping advertising to save money is like stopping your watch to save time." - Henry Ford Designers need to make money off of something as well, and thus, who could blame them for creating advertisements? The advertisement industry is still one of the better payers. In contrast to the owner of your local pizza place, the ad customer is fully aware of the design’s evanescence. To put it in other words: You don’t need to discuss about the appearance for hours. The owner of Luigi’s Pizza Palazzo has a very different point of view on that. In most cases, the difficulty in designing ads isn’t based on the creative or communicative aspect. The bigger problem is the heterogeneity of possible target platforms. Adsvise: What’s Up With Adwords, Facebook and Co. The service Adsvise, which launched just a few days ago, specifically deals with this issue. Adsvise informs the user about the specifications of […]* You might also be interested in the following articlesFour Tools for Creating HTML5 Banners in SecondsOnline Advertisement and HTML5: New Standards to Replace FlashGoogle Will No Longer Serve Flash Ads in 2017Social Media Self-hosted: Neosmart StreamSocial Media Image Maker: Photo-Editing One-Stop-Shop for Social MediaCanva: Create Online Graphics Easily
I really like minimal Web APIs. I've liked the idea for years. With .NET 6, it's starting to happen! Damian Edwards has an interesting minimal API Playground on his GitHub and Maria Naggaga did a great talk on Minimal APIs in .NET 6 that's up on YouTube! Let's explore! I'm running the latest .NET 6 and you can run it on Windows, Mac, or Linux and I cloned it to a folder locally. There's two versions of a complete Todo API in this sample, one using Entity Framework Core and one using Dapper for data access. Both are lightweight ORMs (object relational mappers). Let's explore the Dapper example that uses SQLite. The opening of the code in this example doesn't require a Main() which removes a nice bit of historically unneeded syntactic sodium. The Main is implied.using System.ComponentModel.DataAnnotations;using Microsoft.Data.Sqlite;using Dapper;var builder = WebApplication.CreateBuilder(args);var connectionString = builder.Configuration.GetConnectionString("TodoDb") ?? "Data Source=todos.db";builder.Services.AddScoped(_ => new SqliteConnection(connectionString));builder.Services.AddEndpointsApiExplorer();builder.Services.AddSwaggerGen();var app = builder.Build(); At this point we've got a SQLite connection string ready to go scoped in the Services Dependency Injection Container (fancy words for "it's in the pile of stuff we'll be using later") and we've told the system we want a nice UI for our Open API (Swagger) web services description. It's WSDL for JSON, kids! Then a call to EnsureDb which, ahem, ensures there's a database!await EnsureDb(app.Services, app.Logger); What's it look like? Just a little make this table if it doesn't exist action:async Task EnsureDb(IServiceProvider services, ILogger logger){ logger.LogInformation("Ensuring database exists at connection string '{connectionString}'", connectionString); using var db = services.CreateScope().ServiceProvider.GetRequiredService<SqliteConnection>(); var sql = $@"CREATE TABLE IF NOT EXISTS Todos ( {nameof(Todo.Id)} INTEGER PRIMARY KEY AUTOINCREMENT, {nameof(Todo.Title)} TEXT NOT NULL, {nameof(Todo.IsComplete)} INTEGER DEFAULT 0 NOT NULL CHECK({nameof(Todo.IsComplete)} IN (0, 1)) );"; await db.ExecuteAsync(sql);} Next we'll "map" some paths for /error as well as paths for our API's UI so when I hit /swagger with a web browser it looks nice:if (!app.Environment.IsDevelopment()){ app.UseExceptionHandler("/error");}app.MapGet("/error", () => Results.Problem("An error occurred.", statusCode: 500)) .ExcludeFromDescription();app.MapSwagger();app.UseSwaggerUI(); Then sprinkle in a little Hello World just to give folks a taste:app.MapGet("/", () => "Hello World!") .WithName("Hello");app.MapGet("/hello", () => new { Hello = "World" }) .WithName("HelloObject"); You can see how /hello would return a JSON object of Hello: "World" What's that WithName bit at the end? That names the API and corresponds to 'operationId" in the generated swagger/openAPI json file. It's a shorthand for .WithMetadata(new EndpointNameMetadata("get_product")); which was surely no fun at all. Now let's get some Todos from this database, shall we? Here's all of them and just the complete ones:app.MapGet("/todos", async (SqliteConnection db) => await db.QueryAsync<Todo>("SELECT * FROM Todos")) .WithName("GetAllTodos");app.MapGet("/todos/complete", async (SqliteConnection db) => await db.QueryAsync<Todo>("SELECT * FROM Todos WHERE IsComplete = true")) .WithName("GetCompleteTodos"); Lovely. But what's this Todo object? We haven't seen that. It's just a object that's shaped right. Perhaps one day that could be a record rather than a class but neither Dapper or EFCore support that yet it seems. Still, it's minimal.public class Todo{ public int Id { get; set; } [Required] public string? Title { get; set; } public bool IsComplete { get; set; }} Let's get a little fancier with an API that gets a Todo but it might not find the result! It may produce an HTTP 200 OK or an HTTP 404 NotFound.app.MapGet("/todos/{id}", async (int id, SqliteConnection db) => await db.QuerySingleOrDefaultAsync<Todo>("SELECT * FROM Todos WHERE Id = @id", new { id }) is Todo todo ? Results.Ok(todo) : Results.NotFound()) .WithName("GetTodoById") .Produces<Todo>(StatusCodes.Status200OK) .Produces(StatusCodes.Status404NotFound); Don't be sad if you don't like SQL like this, it's just a choice amongst many. You can use whatever ORM you want, worry not. A thought: The .Produces are used by the OpenAPI/Swagger system. In my mind, it'd be nice to avoid saying it twice as the Results.Ok and Results.NotFound is sitting right there, but you'd need a Source Generator or aspect-oriented post compilation weaver to tack in on after the fact. This is the only part that I don't like. Go explore the code and check it out for yourself! Check out our Sponsor! YugabyteDB is a distributed SQL database designed for resilience and scale. It is 100% open source, PostgreSQL-compatible, enterprise-grade, and runs across all clouds. Sign up and get a free t-shirt! (C) 2021 Scott Hanselman. All rights reserved.
What do Salesforce, TaskRabbit, Tesla, and Pocket websites have in common? They all rock hero images. Make no mistake, the hero image web design trend is still very much alive. What is a hero image? Well, it's basically a giant banner-style image that takes over the top half of the page. The main goal of […]
In this particular blog, you will be aware about the Best techniques for conducting a virtual meeting while working remotely with the chatwhizz. More than just enabling a virtual face-to-face conference is possible with the top video conferencing software Chatwhizz. They allow you to share what’s on your screen with the rest of the conversation [...]
Watercolour paintings are a hugely popular art style that can be incorporated into your design projects, but you don’t need to be a master artist to create such imagery when Adobe Photoshop can produce realistic watercolour effects with a cocktail of built-in filters. In today’s tutorial I take you through a range of settings that […] The post How To Create a Watercolor Painting Effect in Photoshop appeared first on Spoon Graphics.
Range inputs have notoriously been a pain to style. Each browser renders the input differently requiring you to use vendor prefixes in order to create a cohesive look and feel. In this article, we'll take a look at the quirkiness of the HTML range input and demonstrate how to style the input to look consistent across all major browsers.
Whether you're working on a book cover design for an indie author or a publishing company, a great way to show off your professionalism and win over your client is to present your design with a book cover mockup template. Book cover mockup templates not only let you present your designs more professionally but also […]
About The Coding Studio Inc.
Developing professional web applications
for Saint-Cyprien, Quebec, for 20 years!
Consultation Services
With years of experience and many satisfied customers, we provide the direction and assistance you require.
Custom Web Development
We specialize in complex custom web projects, from small business websites to corporate applications.
Increase Profits
We create an experience which converts more leads and retains more customers, which increases profits.
Reduce Expenses
We help to simplify and automate employee tasks, which reduces payroll and other expenses.
What customers have said
TestimonialsBlandford-Blenheim,Ontario Web Design & Development
Carlyle,Saskatchewan Web Design & Development
Fort Erie,Ontario Web Design & Development
Quispamsis,New Brunswick Web Design & Development
Ajax,Ontario Web Design & Development
New Bandon,New Brunswick Web Design & Development
Tyendinaga,Ontario Web Design & Development
Plessisville,Quebec Web Design & Development