Skip to content

Commit 2fd6089

Browse files
committed
chore: added lucide react
1 parent 6d15594 commit 2fd6089

File tree

4 files changed

+62
-12
lines changed

4 files changed

+62
-12
lines changed

package-lock.json

Lines changed: 10 additions & 10 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
"@uidotdev/usehooks": "^2.4.1",
1414
"clsx": "^2.1.1",
1515
"framer-motion": "^11.3.28",
16-
"fuse.js": "^7.0.0",
16+
"lucide-react": "^0.436.0",
1717
"react": "^18.3.1",
1818
"react-dom": "^18.3.1",
1919
"react-helmet-async": "^2.0.5",

src/components/Error.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ import { Link } from 'react-router-dom';
22

33
const Error = () => {
44
return (
5-
<div className='flex items-center justify-center h-[90vh] text-white'>
5+
<div className='flex items-center justify-center h-[90vh] dark:text-white text-slate-800'>
66
The requested page doesn't exist. Try searching for topics or navigate
77
back to{' '}
88
<Link

src/utils/lists.ts

Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -194,3 +194,53 @@ export const categories = [
194194
link: '/go-facts',
195195
},
196196
];
197+
198+
export const exercises = [
199+
{
200+
difficulty: 'Beginner',
201+
exercises: [
202+
'Create a program that prints "Hello, world!" to the console.',
203+
'Write a program that performs simple arithmetic operations (addition, subtraction, multiplication, division, modulo) with two numbers.',
204+
"Create a program that takes a user's name as input and prints a personalized greeting. Use string concatenation, length, and indexing to manipulate the string.",
205+
"Write a program that asks the user for their age and prints a message based on their age: You're a child, You're an adult, or You're a senior citizen",
206+
'Use a `for` loop to print the numbers from 1 to 10',
207+
'Write a program that uses a `while` loop to keep asking the user for a number until they enter a negative number.',
208+
'Write a function that calculates the factorial of a number using recursion.',
209+
'Create a slice of strings and add, remove, and modify elements.',
210+
'Use a `for` loop to iterate through an array or slice and print each element.',
211+
"Write a program that searches for a specific element in a slice and prints its index if found, otherwise, print 'Element not found'",
212+
'Write a program that checks if a given key exists in a map.',
213+
'Define an interface and create structs that implement it.',
214+
],
215+
message:
216+
'These are beginner-level exercises to try out for you. Do the exercises (all of them if possible). If there is a topic that bothers you, google is your best friend! Plus, consider online coding exercise websites like Codewars.',
217+
},
218+
{
219+
difficulty: 'Intermediate',
220+
exercises: [
221+
'Bank Account Management: Create a `BankAccount` struct with fields like `Name`, `Balance`, and `AccountNumber`. Implement methods like `Deposit`, `Withdraw`, and `GetBalance`. Write a program that simulates bank account operations.',
222+
'Geometric Shapes: Create interfaces for `Shape` and `Resizable`. Define structs for `Circle`, `Square`, and `Rectangle` that implement these interfaces. Implement methods for calculating area and perimeter. Create a program that allows the user to create different shapes and perform operations on them.',
223+
'Text File Analyzer: Read a text file from the command line. Calculate the number of words, lines, and characters in the file. Handle file opening errors gracefully.',
224+
'CSV Data Parser: Parse a CSV file with data about products (name, price, quantity). Store the data in a slice of structs. Calculate the total cost of all products. Handle errors during CSV parsing.',
225+
'Write a web scraper that retrieves data from a website using the `net/http` package. Use goroutines to parallelize the scraping process and improve performance.',
226+
],
227+
message:
228+
'These are small programs that solve real problems to solidify your skills. Feel free to extend on them and add features. ',
229+
},
230+
{
231+
difficulty: 'Advanced',
232+
exercises: [
233+
'Distributed Key-Value Store: Implement a distributed key-value store using a consistent hashing algorithm (like Ketama) for data distribution across multiple nodes. Design a protocol for communication between nodes. Consider fault tolerance and handling node failures.',
234+
'Real-time Data Processing Pipeline: Build a real-time data processing pipeline that consumes data from a source (e.g., Kafka) and performs transformations (filtering, aggregation, etc.). Utilize channels and goroutines for concurrent processing. Implement error handling and logging for resilience.',
235+
'Microservice Architecture: Break down a complex application into smaller, independently deployable microservices. Choose a framework like `Gin`, `Echo`, or `Fiber` for creating RESTful APIs. Implement service discovery and communication using tools like Consul or Kubernetes.',
236+
'GraphQL API: Create a GraphQL API using a framework like `graphql-go` or `uber/graphql`. Design a schema for your data and implement resolvers for querying and mutation operations. Ensure efficient query execution and data fetching.',
237+
'Custom Data Structure: Design and implement a custom data structure, such as a skip list or a Trie. Benchmark its performance against standard Golang data structures for different use cases. Implement efficient search, insertion, and deletion operations.',
238+
" Graph Algorithms: Implement classic graph algorithms like Dijkstra's shortest path, A* search, or Depth-First Search. Choose a suitable representation for graphs (adjacency list, adjacency matrix). Apply these algorithms to solve real-world problems like routing or network analysis.",
239+
'Performance Optimization: Profile a Golang application using tools like `pprof` to identify performance bottlenecks. Optimize code for speed and memory efficiency. Consider using techniques like caching, parallelization, and data compression.',
240+
'Memory Leak Detection: Implement strategies to detect and fix memory leaks in your applications. Use tools like `go test -race` for concurrency-related issues. Analyze memory usage patterns and implement memory-efficient data structures.',
241+
'Embedded Systems and Go: Explore the use of Go for embedded systems development using the `go-on-arm` or `tinygo` toolchain. Write code for a simple embedded system with GPIO control and sensor interaction.',
242+
],
243+
message:
244+
'These exercises are pretty advanced, and attempt them after diving deep in Go. You can check them out later on your career or when you feel confident about your Go skills.',
245+
},
246+
];

0 commit comments

Comments
 (0)