diff --git a/README.md b/README.md index bac6937..26c2a1b 100644 --- a/README.md +++ b/README.md @@ -1,20 +1,38 @@ # PhotoHUB Just a simple python program to generate static site +## Screenshots + +### Picture Page +![](./screenshots/page.png) + +### Album Page +![](./screenshots/album.png) + +## Installation +``` sh +python3 -m venv venv +python3 -m pip -r requirements.txt +``` + +## Usage + +Move and rename file +```sh +python3 tools/copy.py %your raws% %site location% +``` + +Generate html page +``` sh +python3 src/main.py %site location% +``` ## File -- RAW: (optionnal) -- EDIT_DATA: (optionnal) -- LARGE: high resolution format (optionnal: can be generated by the RAW) -- SMALL: low resolution format (optionnal: can be generated by the LARGE) -- DESQ: description markdown file (optionnal) +### Mandatory +- a .png -### Format supported -``` -RAW: .NEF -LARGE: .png -SMALL: jpeg -EDIT_DATA: .pp3 -DESQ: .md -``` \ No newline at end of file +### Optionnal +- raw {*.NEF} +- readme.md +- (png file).out.pp3 \ No newline at end of file diff --git a/example/icons/file.png b/example/icons/file.png deleted file mode 100644 index 470495a..0000000 Binary files a/example/icons/file.png and /dev/null differ diff --git a/example/img1/img1.NEF b/example/img1/img1.NEF deleted file mode 100644 index 953d2b9..0000000 Binary files a/example/img1/img1.NEF and /dev/null differ diff --git a/example/img1/img1.css b/example/img1/img1.css deleted file mode 100644 index d2d8ddf..0000000 --- a/example/img1/img1.css +++ /dev/null @@ -1,84 +0,0 @@ -body { - background-color: #002b36; - display: flex; - justify-content: center; /* Centre l'image */ - align-items: center; /* Aligne verticalement */ - position: relative; - flex-direction: column; -} - -#small { - max-width: 100%; - height: auto; - display: block; -} - -#download { - background-color: lightgray; - position: absolute; - margin: 10px; - right: 200px; - top: 200px; -} - -#download * { - background-color: aqua; - display: flex; - margin: 10px; -} - -#download * p { - align-items: center; -} - -a { - text-decoration: none; -} - -#download img { - height: 50px; - width: 50px; -} - -pre { - background: #f4f4f4; - padding: 10px; - border-radius: 5px; - overflow-x: auto; - } - - code { - font-family: "Courier New", monospace; - color: #333; - } - - .dropdown-btn { - padding: 10px 20px; - background-color: #4CAF50; - color: white; - border: none; - cursor: pointer; - font-size: 16px; - border-radius: 5px; - display: flex; -} - -/* Cacher le checkbox (pour qu'il ne soit pas visible) */ -.dropdown-checkbox { - display: none; -} - -/* Style du texte qui apparaît lorsque la case est cochée */ -.dropdown-text { - display: none; - margin-top: 10px; - padding: 10px; - background-color: #f1f1f1; - border: 1px solid #ddd; - border-radius: 5px; -} - -/* Quand la case est cochée, afficher le texte */ -.dropdown-checkbox:checked + .dropdown-btn + .dropdown-text { - display: flex; -} \ No newline at end of file diff --git a/example/img1/img1.html b/example/img1/img1.html deleted file mode 100644 index 20c1ad1..0000000 --- a/example/img1/img1.html +++ /dev/null @@ -1,38 +0,0 @@ - - - - - - - - -
- - -

large

-
- - -

raw

-
-
-
- - - - - - -
- - - \ No newline at end of file diff --git a/example/img1/img1.jpeg b/example/img1/img1.jpeg deleted file mode 100644 index b0f2052..0000000 Binary files a/example/img1/img1.jpeg and /dev/null differ diff --git a/example/img1/img1.png b/example/img1/img1.png deleted file mode 100644 index 7fbc6c4..0000000 Binary files a/example/img1/img1.png and /dev/null differ diff --git a/example/img1/img1.pp3 b/example/img1/img1.pp3 deleted file mode 100644 index 2c6db5e..0000000 --- a/example/img1/img1.pp3 +++ /dev/null @@ -1,752 +0,0 @@ -[Version] -AppVersion=5.9 -Version=349 - -[General] -Rank=0 -ColorLabel=0 -InTrash=false - -[Exposure] -Auto=false -Clip=0.02 -Compensation=0 -Brightness=0 -Contrast=0 -Saturation=0 -Black=0 -HighlightCompr=0 -HighlightComprThreshold=0 -ShadowCompr=50 -HistogramMatching=true -CurveFromHistogramMatching=true -ClampOOG=true -CurveMode=FilmLike -CurveMode2=Standard -Curve=4;0;0;0.050000000000000003;0.026486708211773232;0.12;0.076991901310519445;0.21799999999999997;0.19406184409178534;0.35519999999999996;0.40643555161187844;0.54727999999999999;0.65396579527439191;0.81619199999999992;0.86925799088009603;1;1; -Curve2=0; - -[HLRecovery] -Enabled=true -Method=Blend -Hlbl=0 - -[Retinex] -Enabled=false -Str=20 -Scal=3 -Iter=1 -Grad=1 -Grads=1 -Gam=1.3 -Slope=3 -Median=false -Neigh=80 -Offs=0 -Vart=200 -Limd=8 -highl=4 -skal=3 -complexMethod=normal -RetinexMethod=high -mapMethod=none -viewMethod=none -Retinexcolorspace=Lab -Gammaretinex=none -CDCurve=0; -MAPCurve=0; -CDHCurve=0; -LHCurve=0; -Highlights=0 -HighlightTonalWidth=80 -Shadows=0 -ShadowTonalWidth=80 -Radius=40 -TransmissionCurve=1;0;0.5;0.34999999999999998;0.34999999999999998;0.59999999999999998;0.75;0.34999999999999998;0.34999999999999998;1;0.5;0.34999999999999998;0.34999999999999998; -GainTransmissionCurve=1;0;0.10000000000000001;0.34999999999999998;0;0.25;0.25;0.34999999999999998;0.34999999999999998;0.69999999999999996;0.25;0.34999999999999998;0.34999999999999998;1;0.10000000000000001;0;0; - -[Local Contrast] -Enabled=false -Radius=80 -Amount=0.20000000000000001 -Darkness=1 -Lightness=1 - -[Channel Mixer] -Enabled=false -Red=1000;0;0; -Green=0;1000;0; -Blue=0;0;1000; - -[Black & White] -Enabled=false -Method=Desaturation -Auto=false -ComplementaryColors=true -Setting=RGB-Rel -Filter=None -MixerRed=33 -MixerOrange=33 -MixerYellow=33 -MixerGreen=33 -MixerCyan=33 -MixerBlue=33 -MixerMagenta=33 -MixerPurple=33 -GammaRed=0 -GammaGreen=0 -GammaBlue=0 -Algorithm=SP -LuminanceCurve=0; -BeforeCurveMode=Standard -AfterCurveMode=Standard -BeforeCurve=0; -AfterCurve=0; - -[Luminance Curve] -Enabled=false -Brightness=0 -Contrast=0 -Chromaticity=0 -AvoidColorShift=false -RedAndSkinTonesProtection=0 -LCredsk=true -LCurve=0; -aCurve=0; -bCurve=0; -ccCurve=0; -chCurve=0; -lhCurve=0; -hhCurve=0; -LcCurve=0; -ClCurve=0; - -[Sharpening] -Enabled=false -Contrast=20 -Method=usm -Radius=0.5 -BlurRadius=0.20000000000000001 -Amount=200 -Threshold=20;80;2000;1200; -OnlyEdges=false -EdgedetectionRadius=1.8999999999999999 -EdgeTolerance=1800 -HalocontrolEnabled=false -HalocontrolAmount=85 -DeconvRadius=0.75 -DeconvAmount=100 -DeconvDamping=0 -DeconvIterations=30 - -[Vibrance] -Enabled=false -Pastels=0 -Saturated=0 -PSThreshold=0;75; -ProtectSkins=false -AvoidColorShift=true -PastSatTog=true -SkinTonesCurve=0; - -[SharpenEdge] -Enabled=false -Passes=2 -Strength=50 -ThreeChannels=false - -[SharpenMicro] -Enabled=false -Matrix=false -Strength=20 -Contrast=20 -Uniformity=5 - -[White Balance] -Enabled=true -Setting=Camera -Temperature=5098 -Green=1.0387654687995256 -Equal=1 -TemperatureBias=0 - -[Color appearance] -Enabled=false -Degree=90 -AutoDegree=true -Degreeout=90 -AutoDegreeout=true -Surround=Average -complex=normal -ModelCat=16 -CatCat=clas -Surrsrc=Average -AdaptLum=16 -Badpixsl=0 -Model=RawT -Illum=i50 -Algorithm=No -J-Light=0 -Q-Bright=0 -C-Chroma=0 -S-Chroma=0 -M-Chroma=0 -J-Contrast=0 -Q-Contrast=0 -H-Hue=0 -RSTProtection=0 -AdaptScene=2000 -AutoAdapscen=true -YbScene=18 -Autoybscen=true -SurrSource=false -Gamut=true -Tempout=5003 -Autotempout=true -Greenout=1 -Tempsc=5003 -Greensc=1 -Ybout=18 -Datacie=false -Tonecie=false -Presetcat02=false -CurveMode=Lightness -CurveMode2=Brightness -CurveMode3=Chroma -Curve=0; -Curve2=0; -Curve3=0; - -[Impulse Denoising] -Enabled=false -Threshold=50 - -[Defringing] -Enabled=false -Radius=2 -Threshold=13 -HueCurve=1;0.16666666699999999;0;0.34999999999999998;0.34999999999999998;0.34699999999999998;0;0.34999999999999998;0.34999999999999998;0.51366742600000004;0;0.34999999999999998;0.34999999999999998;0.66894457100000004;0;0.34999999999999998;0.34999999999999998;0.82877752459999998;0.97835991;0.34999999999999998;0.34999999999999998;0.99088838270000001;0;0.34999999999999998;0.34999999999999998; - -[Dehaze] -Enabled=false -Strength=50 -ShowDepthMap=false -Depth=25 -Saturation=50 - -[Directional Pyramid Denoising] -Enabled=false -Enhance=false -Median=false -Luma=0 -Ldetail=0 -Chroma=15 -Method=Lab -LMethod=SLI -CMethod=MAN -C2Method=AUTO -SMethod=shal -MedMethod=soft -RGBMethod=soft -MethodMed=none -Redchro=0 -Bluechro=0 -Gamma=1.7 -Passes=1 -LCurve=1;0.050000000000000003;0.14999999999999999;0.34999999999999998;0.34999999999999998;0.55000000000000004;0.040000000000000001;0.34999999999999998;0.34999999999999998; -CCCurve=1;0.050000000000000003;0.5;0.34999999999999998;0.34999999999999998;0.34999999999999998;0.050000000000000003;0.34999999999999998;0.34999999999999998; - -[EPD] -Enabled=false -Strength=0.5 -Gamma=1 -EdgeStopping=1.3999999999999999 -Scale=1 -ReweightingIterates=0 - -[FattalToneMapping] -Enabled=false -Threshold=30 -Amount=20 -Anchor=50 - -[Shadows & Highlights] -Enabled=false -Highlights=0 -HighlightTonalWidth=70 -Shadows=0 -ShadowTonalWidth=30 -Radius=40 -Lab=false - -[Crop] -Enabled=false -X=-1 -Y=-1 -W=3032 -H=2007 -FixedRatio=true -Ratio=As Image -Orientation=As Image -Guide=Frame - -[Coarse Transformation] -Rotate=0 -HorizontalFlip=false -VerticalFlip=false - -[Common Properties for Transformations] -Method=log -AutoFill=true - -[Rotation] -Degree=0 - -[Distortion] -Amount=0 - -[LensProfile] -LcMode=lfauto -LCPFile= -UseDistortion=true -UseVignette=true -UseCA=false -LFCameraMake= -LFCameraModel= -LFLens= - -[Perspective] -Method=simple -Horizontal=0 -Vertical=0 -CameraCropFactor=0 -CameraFocalLength=0 -CameraPitch=0 -CameraRoll=0 -CameraShiftHorizontal=0 -CameraShiftVertical=0 -CameraYaw=0 -ProjectionShiftHorizontal=0 -ProjectionPitch=0 -ProjectionRotate=0 -ProjectionShiftVertical=0 -ProjectionYaw=0 -ControlLineValues= -ControlLineTypes= - -[Gradient] -Enabled=false -Degree=0 -Feather=25 -Strength=0.59999999999999998 -CenterX=0 -CenterY=0 - -[Locallab] -Enabled=false -Selspot=0 - -[PCVignette] -Enabled=false -Strength=0.59999999999999998 -Feather=50 -Roundness=50 - -[CACorrection] -Red=0 -Blue=0 - -[Vignetting Correction] -Amount=0 -Radius=50 -Strength=1 -CenterX=0 -CenterY=0 - -[Resize] -Enabled=false -Scale=1 -AppliesTo=Cropped area -Method=Lanczos -DataSpecified=3 -Width=900 -Height=900 -LongEdge=900 -ShortEdge=900 -AllowUpscaling=false - -[PostDemosaicSharpening] -Enabled=true -Contrast=10 -AutoContrast=true -AutoRadius=true -DeconvRadius=0.75 -DeconvRadiusOffset=0 -DeconvIterCheck=true -DeconvIterations=20 - -[PostResizeSharpening] -Enabled=false -Contrast=15 -Method=rld -Radius=0.5 -Amount=200 -Threshold=20;80;2000;1200; -OnlyEdges=false -EdgedetectionRadius=1.8999999999999999 -EdgeTolerance=1800 -HalocontrolEnabled=false -HalocontrolAmount=85 -DeconvRadius=0.45000000000000001 -DeconvAmount=100 -DeconvDamping=0 -DeconvIterations=100 - -[Color Management] -InputProfile=(cameraICC) -ToneCurve=false -ApplyLookTable=true -ApplyBaselineExposureOffset=true -ApplyHueSatMap=true -DCPIlluminant=0 -WorkingProfile=ProPhoto -WorkingTRC=none -Will=def -Wprim=def -WorkingTRCGamma=2.3999999999999999 -WorkingTRCSlope=12.92 -Redx=0.73470000000000002 -Redy=0.26529999999999998 -Grex=0.15959999999999999 -Grey=0.84040000000000004 -Blux=0.036600000000000001 -Bluy=0.0001 -LabGridcieALow=0.51763000000000003 -LabGridcieBLow=-0.33582000000000001 -LabGridcieAHigh=-0.75163000000000002 -LabGridcieBHigh=-0.81799999999999995 -LabGridcieGx=-0.69164000000000003 -LabGridcieGy=-0.70909 -LabGridcieWx=-0.18964 -LabGridcieWy=-0.16636000000000001 -Preser=0 -Fbw=false -OutputProfile=RTv4_sRGB -aIntent=Relative -OutputProfileIntent=Relative -OutputBPC=true - -[Wavelet] -Enabled=false -Strength=100 -Balance=0 -Sigmafin=1 -Sigmaton=1 -Sigmacol=1 -Sigmadir=1 -Rangeab=20 -Protab=0 -Iter=0 -MaxLev=7 -TilesMethod=full -complexMethod=normal -mixMethod=mix -sliMethod=sli -quaMethod=cons -DaubMethod=4_ -ChoiceLevMethod=all -BackMethod=grey -LevMethod=4 -DirMethod=all -CBgreenhigh=0 -CBgreenmed=0 -CBgreenlow=0 -CBbluehigh=0 -CBbluemed=0 -CBbluelow=0 -Ballum=7 -Sigm=1 -Levden=0 -Thrden=0 -Limden=0 -Balchrom=0 -Chromfine=0 -Chromcoarse=0 -MergeL=20 -MergeC=20 -Softrad=0 -Softradend=0 -Strend=50 -Detend=0 -Thrend=0 -Expcontrast=false -Expchroma=false -Expedge=false -expbl=false -Expresid=false -Expfinal=false -Exptoning=false -Expnoise=false -Expclari=false -LabGridALow=0 -LabGridBLow=0 -LabGridAHigh=0 -LabGridBHigh=0 -Contrast1=0 -Contrast2=0 -Contrast3=0 -Contrast4=0 -Contrast5=0 -Contrast6=0 -Contrast7=0 -Contrast8=0 -Contrast9=0 -Chroma1=0 -Chroma2=0 -Chroma3=0 -Chroma4=0 -Chroma5=0 -Chroma6=0 -Chroma7=0 -Chroma8=0 -Chroma9=0 -ContExtra=0 -HSMethod=with -HLRange=50;75;100;98; -SHRange=0;2;50;25; -Edgcont=0;10;75;40; -Level0noise=0;0; -Level1noise=0;0; -Level2noise=0;0; -Level3noise=0;0; -Leveldenoise=0;0; -Levelsigm=1;1; -ThresholdHighlight=4 -ThresholdShadow=5 -Edgedetect=90 -Edgedetectthr=20 -EdgedetectthrHi=0 -Edgesensi=60 -Edgeampli=10 -ThresholdChroma=5 -CHromaMethod=without -Medgreinf=less -Ushamethod=clari -CHSLromaMethod=SL -EDMethod=CU -NPMethod=none -BAMethod=none -TMMethod=cont -ChromaLink=0 -ContrastCurve=1;0;0.25;0.34999999999999998;0.34999999999999998;0.5;0.75;0.34999999999999998;0.34999999999999998;0.90000000000000002;0;0.34999999999999998;0.34999999999999998; -blcurve=1;0;0;0;0.34999999999999998;0.5;0;0.34999999999999998;0.34999999999999998;1;0;0.34999999999999998;0.34999999999999998; -Pastlev=0;2;30;20; -Satlev=30;45;130;100; -OpacityCurveRG=1;0;0.5;0.34999999999999998;0.34999999999999998;1;0.5;0.34999999999999998;0.34999999999999998; -OpacityCurveBY=1;0;0.5;0.34999999999999998;0.34999999999999998;1;0.5;0.34999999999999998;0.34999999999999998; -wavdenoise=1;0;1;0.34999999999999998;0.34999999999999998;0.5;1;0.34999999999999998;0.34999999999999998;1;1;0.34999999999999998;0.34999999999999998; -wavdenoiseh=1;0;1;0.34999999999999998;0.34999999999999998;0.5;1;0.34999999999999998;0.34999999999999998;1;1;0.34999999999999998;0.34999999999999998; -OpacityCurveW=1;0;0.34999999999999998;0.34999999999999998;0;0.34999999999999998;0.75;0.34999999999999998;0.34999999999999998;0.59999999999999998;0.75;0.34999999999999998;0.34999999999999998;1;0.34999999999999998;0;0; -OpacityCurveWL=1;0;0.5;0.34999999999999998;0.34999999999999998;1;0.5;0.34999999999999998;0.34999999999999998; -HHcurve=0; -Wavguidcurve=0; -Wavhuecurve=0; -CHcurve=0; -WavclCurve=0; -Median=false -Medianlev=false -Linkedg=false -CBenab=false -Lipst=false -Skinprotect=0 -chrwav=0 -bluwav=1 -Hueskin=-5;25;170;120; -Edgrad=15 -Edgeffect=1 -Edgval=0 -ThrEdg=10 -AvoidColorShift=false -Showmask=false -Oldsh=true -TMr=false -Sigma=1 -Offset=1 -Lowthr=40 -ResidualcontShadow=0 -ResidualcontHighlight=0 -ThresholdResidShadow=30 -ThresholdResidHighLight=70 -Residualradius=40 -Residualchroma=0 -Residualblur=0 -Residualblurc=0 -ResidualTM=0 -ResidualEDGS=1.3999999999999999 -ResidualSCALE=1 -Residualgamma=1 -HueRangeResidual=0 -HueRange=-260;-250;-130;-140; -Contrast=0 - -[Spot removal] -Enabled=false - -[Directional Pyramid Equalizer] -Enabled=false -Gamutlab=false -cbdlMethod=bef -Mult0=1 -Mult1=1 -Mult2=1 -Mult3=1 -Mult4=1 -Mult5=1 -Threshold=0.20000000000000001 -Skinprotect=0 -Hueskin=-5;25;170;120; - -[HSV Equalizer] -Enabled=false -HCurve=0; -SCurve=0; -VCurve=0; - -[SoftLight] -Enabled=false -Strength=30 - -[Film Simulation] -Enabled=false -ClutFilename= -Strength=100 - -[RGB Curves] -Enabled=false -LumaMode=false -rCurve=0; -gCurve=0; -bCurve=0; - -[ColorToning] -Enabled=false -Method=LabRegions -Lumamode=true -Twocolor=Std -Redlow=0 -Greenlow=0 -Bluelow=0 -Satlow=0 -Balance=0 -Sathigh=0 -Redmed=0 -Greenmed=0 -Bluemed=0 -Redhigh=0 -Greenhigh=0 -Bluehigh=0 -Autosat=true -OpacityCurve=1;0;0.29999999999999999;0.34999999999999998;0;0.25;0.80000000000000004;0.34999999999999998;0.34999999999999998;0.69999999999999996;0.80000000000000004;0.34999999999999998;0.34999999999999998;1;0.29999999999999999;0;0; -ColorCurve=1;0.050000000000000003;0.62;0.25;0.25;0.58499999999999996;0.11;0.25;0.25; -SatProtectionThreshold=30 -SaturatedOpacity=80 -Strength=50 -HighlightsColorSaturation=60;80; -ShadowsColorSaturation=80;208; -ClCurve=3;0;0;0.34999999999999998;0.65000000000000002;1;1; -Cl2Curve=3;0;0;0.34999999999999998;0.65000000000000002;1;1; -LabGridALow=0 -LabGridBLow=0 -LabGridAHigh=0 -LabGridBHigh=0 -LabRegionA_1=0 -LabRegionB_1=0 -LabRegionSaturation_1=0 -LabRegionSlope_1=1 -LabRegionOffset_1=0 -LabRegionPower_1=1 -LabRegionHueMask_1=1;0.16666666699999999;1;0.34999999999999998;0.34999999999999998;0.82877752459999998;1;0.34999999999999998;0.34999999999999998; -LabRegionChromaticityMask_1=1;0;1;0.34999999999999998;0.34999999999999998;1;1;0.34999999999999998;0.34999999999999998; -LabRegionLightnessMask_1=1;0;1;0.34999999999999998;0.34999999999999998;1;1;0.34999999999999998;0.34999999999999998; -LabRegionMaskBlur_1=0 -LabRegionChannel_1=-1 -LabRegionsShowMask=-1 - -[RAW] -DarkFrame= -DarkFrameAuto=false -FlatFieldFile= -FlatFieldAutoSelect=false -FlatFieldBlurRadius=32 -FlatFieldBlurType=Area Flatfield -FlatFieldAutoClipControl=false -FlatFieldClipControl=0 -CA=true -CAAvoidColourshift=true -CAAutoIterations=2 -CARed=0 -CABlue=0 -HotPixelFilter=false -DeadPixelFilter=false -HotDeadPixelThresh=100 -PreExposure=1 - -[RAW Bayer] -Method=amaze -Border=4 -ImageNum=1 -CcSteps=0 -PreBlack0=0 -PreBlack1=0 -PreBlack2=0 -PreBlack3=0 -PreTwoGreen=true -LineDenoise=0 -LineDenoiseDirection=3 -GreenEqThreshold=0 -DCBIterations=2 -DCBEnhance=true -LMMSEIterations=2 -DualDemosaicAutoContrast=true -DualDemosaicContrast=20 -PixelShiftMotionCorrectionMethod=1 -PixelShiftEperIso=0 -PixelShiftSigma=1 -PixelShiftShowMotion=false -PixelShiftShowMotionMaskOnly=false -pixelShiftHoleFill=true -pixelShiftAverage=false -pixelShiftMedian=false -pixelShiftGreen=true -pixelShiftBlur=true -pixelShiftSmoothFactor=0.69999999999999996 -pixelShiftEqualBright=false -pixelShiftEqualBrightChannel=false -pixelShiftNonGreenCross=true -pixelShiftDemosaicMethod=amaze -PDAFLinesFilter=false - -[RAW X-Trans] -Method=3-pass (best) -DualDemosaicAutoContrast=true -DualDemosaicContrast=20 -Border=7 -CcSteps=0 -PreBlackRed=0 -PreBlackGreen=0 -PreBlackBlue=0 - -[MetaData] -Mode=0 - -[Film Negative] -Enabled=false -RedRatio=1.3600000000000001 -GreenExponent=1.5 -BlueRatio=0.85999999999999999 -ColorSpace=1 -RefInput=0;0;0; -RefOutput=0;0;0; - -[RAW Preprocess WB] -Mode=1 diff --git a/screenshots/album.png b/screenshots/album.png new file mode 100644 index 0000000..f9bb778 Binary files /dev/null and b/screenshots/album.png differ diff --git a/screenshots/page.png b/screenshots/page.png new file mode 100644 index 0000000..87207ed Binary files /dev/null and b/screenshots/page.png differ