Skip to content

Instantly share code, notes, and snippets.

View liamtarpey's full-sized avatar

Liam Tarpey liamtarpey

View GitHub Profile
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>busuu - Front-end Interview - HTML &amp; CSS</title>
<style>
/*
* Colors used:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>busuu - Front-end Interview - HTML &amp; CSS</title>
<style>
/*
* Colors used:
@liamtarpey
liamtarpey / App.jsx
Last active November 26, 2019 15:28
Loadable Components App - React
import React from 'react';
import LoadComponent from './LoadableComponent.jsx';
const HomeComponent = LoadComponent('HomeComponent');
const App = () => {
return (
<HomeComponent />
);
};
export default App;
@liamtarpey
liamtarpey / LoadableErrorBoundary.jsx
Last active September 27, 2019 10:25
Loadable Error Boundary - React
import React, { PureComponent, Fragment } from 'react';
class LoadableErrorBoundary extends PureComponent {
constructor() {
super();
this.state = {
hasError: false,
error: null
};
this.retryLoad = this.retryLoad.bind(this);
@liamtarpey
liamtarpey / LoadableComponent.jsx
Created September 27, 2019 10:15
Loadable Components in React
import React, { PureComponent, Suspense, Fragment, lazy } from 'react';
import LoadableErrorBoundary from './LoadableErrorBoundary.jsx';
import LoadableConstants from './loadable.constants.js';
// Private vars
const filename = 'LoadableComponent.jsx';
/**
* Our render for any loading state - maybe add a nice spinner?
* (Visible whilst the component is being fetched)
@liamtarpey
liamtarpey / Busuu - LoadableComponent.jsx
Created September 20, 2019 15:31
Busuu Code Splitting
import React, { PureComponent, Suspense, Fragment, lazy } from 'react';
import LoadableErrorBoundary from './LoadableErrorBoundary.jsx';
import LoadableConstants from './loadable.constants.js';
// Private vars
const filename = 'LoadableComponent.jsx';
/**
* Our render for any loading state - maybe add a nice spinner?
* (Visible whilst the component is being fetched)
*/
const loadingState = (
export default {
HomeComponent: () => import(/* webpackChunkName: 'home/HomeComponent' */ './HomeComponent.jsx'),
AboutComponent: () => import(/* webpackChunkName: 'about/AboutComponent' */ './AboutComponent.jsx'),
SettingsComponent: () => import(/* webpackChunkName: 'settings/SettingsComponent' */ './SettingsComponent.jsx')
};
@liamtarpey
liamtarpey / week-number
Created August 8, 2018 09:37
Gets week number based on the week starting on a Sunday from a given date.
const getStartOfWeek = (date) => {
const diff = date.getDate() - date.getDay();
const startOfWeekDate = new Date(date.setDate(diff));
return startOfWeekDate.toISOString().slice(0, 10);
};
const getWeekNumber = (fromDate) => {
const now = new Date();
const activationDate = new Date(fromDate);
const startOfWeekFromNow = getStartOfWeek(now);
{
"binary_file_patterns":
[
".svn/",
".git/",
".hg/",
"CVS/",
"node_modules/",
"bower_components/"
],
@liamtarpey
liamtarpey / shopify-related-products-tags.liquid
Last active March 26, 2017 05:03
Shopify Related Products